diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | composer-diff.json | 41 | ||||
-rw-r--r-- | composer.json | 222 | ||||
-rw-r--r-- | installed.json | 2533 | ||||
-rwxr-xr-x | makesrc.sh | 59 | ||||
-rw-r--r-- | php-cs-fixer-autoload.patch | 80 | ||||
-rw-r--r-- | php-cs-fixer.spec | 698 |
7 files changed, 3162 insertions, 473 deletions
@@ -1,5 +1,7 @@ +clog package-*.xml *.tgz +*.tar.bz2 *.tar.gz *.tar.xz *.tar.xz.asc diff --git a/composer-diff.json b/composer-diff.json deleted file mode 100644 index e08be75..0000000 --- a/composer-diff.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "php-cs-fixer/diff", - "description": "sebastian/diff v2 backport support for PHP5.6", - "keywords": ["diff"], - "homepage": "https://github.com/PHP-CS-Fixer", - "license": "BSD-3-Clause", - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, - { - "name": "SpacePossum" - } - ], - "require": { - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7.23 || ^6.4.3", - "symfony/process": "^3.3" - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "autoload-dev": { - "psr-4": { - "PhpCsFixer\\Diff\\v1_4\\Tests\\": "tests/v1_4", - "PhpCsFixer\\Diff\\v2_0\\Tests\\": "tests/v2_0", - "PhpCsFixer\\Diff\\v3_0\\": "tests/v3_0", - "PhpCsFixer\\Diff\\GeckoPackages\\DiffOutputBuilder\\Tests\\": "tests/GeckoPackages/DiffOutputBuilder/Tests", - "PhpCsFixer\\Diff\\GeckoPackages\\DiffOutputBuilder\\Utils\\": "tests/GeckoPackages/DiffOutputBuilder/Utils" - } - } -} diff --git a/composer.json b/composer.json index 17aaa17..02a3634 100644 --- a/composer.json +++ b/composer.json @@ -1,8 +1,14 @@ { "name": "friendsofphp/php-cs-fixer", - "type": "application", "description": "A tool to automatically fix PHP code style", "license": "MIT", + "type": "application", + "keywords": [ + "fixer", + "standards", + "static analysis", + "static code analysis" + ], "authors": [ { "name": "Fabien Potencier", @@ -14,68 +20,192 @@ } ], "require": { - "php": "^5.6 || ^7.0", + "php": "^7.4 || ^8.0", + "ext-filter": "*", + "ext-hash": "*", "ext-json": "*", "ext-tokenizer": "*", - "composer/semver": "^1.4", - "composer/xdebug-handler": "^1.2", - "doctrine/annotations": "^1.2", - "php-cs-fixer/diff": "^1.3", - "symfony/console": "^3.4.17 || ^4.1.6", - "symfony/event-dispatcher": "^3.0 || ^4.0", - "symfony/filesystem": "^3.0 || ^4.0", - "symfony/finder": "^3.0 || ^4.0", - "symfony/options-resolver": "^3.0 || ^4.0", - "symfony/polyfill-php70": "^1.0", - "symfony/polyfill-php72": "^1.4", - "symfony/process": "^3.0 || ^4.0", - "symfony/stopwatch": "^3.0 || ^4.0" + "clue/ndjson-react": "^1.0", + "composer/semver": "^3.4", + "composer/xdebug-handler": "^3.0.5", + "fidry/cpu-core-counter": "^1.2", + "react/child-process": "^0.6.6", + "react/event-loop": "^1.0", + "react/promise": "^2.11 || ^3.0", + "react/socket": "^1.0", + "react/stream": "^1.0", + "sebastian/diff": "^4.0.6 || ^5.1.1 || ^6.0.2 || ^7.0", + "symfony/console": "^5.4.45 || ^6.4.13 || ^7.0", + "symfony/event-dispatcher": "^5.4.45 || ^6.4.13 || ^7.0", + "symfony/filesystem": "^5.4.45 || ^6.4.13 || ^7.0", + "symfony/finder": "^5.4.45 || ^6.4.17 || ^7.0", + "symfony/options-resolver": "^5.4.45 || ^6.4.16 || ^7.0", + "symfony/polyfill-mbstring": "^1.32", + "symfony/polyfill-php80": "^1.32", + "symfony/polyfill-php81": "^1.32", + "symfony/process": "^5.4.47 || ^6.4.20 || ^7.2", + "symfony/stopwatch": "^5.4.45 || ^6.4.19 || ^7.0" }, "require-dev": { - "johnkary/phpunit-speedtrap": "^1.1 || ^2.0 || ^3.0", - "justinrainbow/json-schema": "^5.0", - "keradus/cli-executor": "^1.2", - "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.1", - "php-cs-fixer/accessible-object": "^1.0", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.1", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.1", - "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.1", - "phpunitgoodpractices/traits": "^1.8", - "symfony/phpunit-bridge": "^4.3", - "symfony/yaml": "^3.0 || ^4.0" + "facile-it/paraunit": "^1.3.1 || ^2.6", + "infection/infection": "^0.29.14", + "justinrainbow/json-schema": "^5.3 || ^6.4", + "keradus/cli-executor": "^2.2", + "mikey179/vfsstream": "^1.6.12", + "php-coveralls/php-coveralls": "^2.8", + "php-cs-fixer/accessible-object": "^1.1", + "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.6", + "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.6", + "phpunit/phpunit": "^9.6.23 || ^10.5.47 || ^11.5.25", + "symfony/polyfill-php84": "^1.32", + "symfony/var-dumper": "^5.4.48 || ^6.4.23 || ^7.3.1", + "symfony/yaml": "^5.4.45 || ^6.4.23 || ^7.3.1" }, "suggest": { - "ext-mbstring": "For handling non-UTF8 characters in cache signature.", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "For IsIdenticalString constraint.", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "For XmlMatchesXsd constraint.", - "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible." - }, - "config": { - "sort-packages": true + "ext-dom": "For handling output formats in XML", + "ext-mbstring": "For handling non-UTF8 characters." }, "autoload": { "psr-4": { "PhpCsFixer\\": "src/" }, - "classmap": [ - "tests/Test/AbstractFixerTestCase.php", - "tests/Test/AbstractIntegrationCaseFactory.php", - "tests/Test/AbstractIntegrationTestCase.php", - "tests/Test/Assert/AssertTokensTrait.php", - "tests/Test/IntegrationCase.php", - "tests/Test/IntegrationCaseFactory.php", - "tests/Test/IntegrationCaseFactoryInterface.php", - "tests/Test/InternalIntegrationCaseFactory.php", - "tests/TestCase.php" + "exclude-from-classmap": [ + "src/Fixer/Internal/*" ] }, "autoload-dev": { "psr-4": { + "PhpCsFixer\\PHPStan\\": "dev-tools/phpstan/src/", "PhpCsFixer\\Tests\\": "tests/" - } + }, + "exclude-from-classmap": [ + "tests/Fixtures/" + ] }, "bin": [ "php-cs-fixer" - ] + ], + "config": { + "allow-plugins": { + "ergebnis/composer-normalize": true, + "infection/extension-installer": false + }, + "prefer-stable": true, + "sort-packages": true + }, + "scripts": { + "post-autoload-dump": [ + "@install-tools" + ], + "auto-review": [ + "Composer\\Config::disableProcessTimeout", + "paraunit run --testsuite auto-review" + ], + "cs:check": "@php php-cs-fixer check --verbose --diff", + "cs:fix": "@php php-cs-fixer fix", + "cs:fix:parallel": [ + "echo '⚠️ This script is deprecated! Utilise built-in parallelisation instead.';", + "@cs:fix" + ], + "docs": "@php dev-tools/doc.php", + "infection": "@test:mutation", + "install-tools": "@composer --working-dir=dev-tools install", + "mess-detector": "@php dev-tools/vendor/bin/phpmd . ansi dev-tools/mess-detector/phpmd.xml --exclude vendor/*,dev-tools/vendor/*,dev-tools/phpstan/*,tests/Fixtures/*", + "normalize": [ + "@composer normalize --working-dir=dev-tools --dry-run ../composer.json", + "@composer normalize --working-dir=dev-tools --dry-run composer.json" + ], + "normalize:fix": [ + "@composer normalize --working-dir=dev-tools ../composer.json", + "@composer normalize --working-dir=dev-tools composer.json" + ], + "php-compatibility": "@php dev-tools/vendor/bin/phpcs -p --standard=dev-tools/php-compatibility/phpcs-php-compatibility.xml", + "phpstan": "@php -d memory_limit=512M dev-tools/vendor/bin/phpstan analyse", + "phpstan:baseline": "@php -d memory_limit=512M dev-tools/vendor/bin/phpstan analyse --generate-baseline=./dev-tools/phpstan/baseline.php", + "qa": "@quality-assurance", + "quality-assurance": [ + "Composer\\Config::disableProcessTimeout", + "@install-tools --quiet", + "@self-check", + "@static-analysis", + "@test" + ], + "require-checker": "@php dev-tools/vendor/bin/composer-require-checker check composer.json --config-file .composer-require-checker.json", + "sa": "@static-analysis", + "self-check": [ + "./dev-tools/check_file_permissions.sh", + "./dev-tools/check_trailing_spaces.sh", + "@composer dump-autoload --dry-run --optimize --strict-psr", + "@normalize", + "@unused-deps", + "@require-checker", + "@auto-review" + ], + "static-analysis": [ + "@cs:check", + "@phpstan", + "@mess-detector" + ], + "test": "@test:all", + "test:all": [ + "@test:unit", + "@test:integration" + ], + "test:coverage": [ + "Composer\\Config::disableProcessTimeout", + "@composer show facile-it/paraunit ^2 && (paraunit coverage --testsuite unit --pass-through=--exclude-group=covers-nothing) || (paraunit coverage --testsuite unit --exclude-group covers-nothing)" + ], + "test:integration": [ + "Composer\\Config::disableProcessTimeout", + "paraunit run --testsuite integration" + ], + "test:mutation": [ + "Composer\\Config::disableProcessTimeout", + "infection --threads=max --only-covered --min-covered-msi=80" + ], + "test:short-open-tag": [ + "Composer\\Config::disableProcessTimeout", + "@php -d short_open_tag=1 ./vendor/bin/phpunit --do-not-cache-result --testsuite short-open-tag" + ], + "test:smoke": [ + "Composer\\Config::disableProcessTimeout", + "paraunit run --testsuite smoke" + ], + "test:unit": [ + "Composer\\Config::disableProcessTimeout", + "paraunit run --testsuite unit" + ], + "unused-deps": "@php dev-tools/vendor/bin/composer-unused --excludePackage=composer/xdebug-handler" + }, + "scripts-descriptions": { + "auto-review": "Execute Auto-review", + "cs:check": "Check coding standards", + "cs:fix": "Fix coding standards", + "cs:fix:parallel": "⚠️DEPRECATED! Use cs:fix with proper parallel config", + "docs": "Regenerate docs", + "infection": "Alias for 'test:mutation'", + "install-tools": "Install DEV tools", + "mess-detector": "Analyse code with Mess Detector", + "normalize": "Check normalization for composer.json files", + "normalize:fix": "Run normalization for composer.json files", + "php-compatibility": "Check compatibility with all supported PHP versions", + "phpstan": "Run PHPStan analysis", + "phpstan:baseline": "Dump PHPStan baseline file - use only for updating, do not add new errors when possible", + "post-autoload-dump": "Run additional tasks after installing/updating main dependencies", + "qa": "Alias for 'quality-assurance'", + "quality-assurance": "Run QA suite", + "require-checker": "Verifies if codebase does not contain soft dependencies", + "sa": "Alias for 'static-analysis'", + "self-check": "Run set of self-checks ensuring repository's validity", + "static-analysis": "Run static analysis", + "test": "Alias for 'test:all'", + "test:all": "Run Unit and Integration tests (but *NOT* Smoke tests)", + "test:coverage": "Run tests that provide code coverage", + "test:integration": "Run Integration tests", + "test:mutation": "Run mutation tests", + "test:short-open-tag": "Run tests with \"short_open_tag\" enabled", + "test:smoke": "Run Smoke tests", + "test:unit": "Run Unit tests", + "unused-deps": "Verifies if app has dependencies that are not used" + } } diff --git a/installed.json b/installed.json new file mode 100644 index 0000000..f6cd7bb --- /dev/null +++ b/installed.json @@ -0,0 +1,2533 @@ +{ + "packages": [ + { + "name": "clue/ndjson-react", + "version": "v1.3.0", + "version_normalized": "1.3.0.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-ndjson.git", + "reference": "392dc165fce93b5bb5c637b67e59619223c931b0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-ndjson/zipball/392dc165fce93b5bb5c637b67e59619223c931b0", + "reference": "392dc165fce93b5bb5c637b67e59619223c931b0", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "react/stream": "^1.2" + }, + "require-dev": { + "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35", + "react/event-loop": "^1.2" + }, + "time": "2022-12-23T10:58:28+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Clue\\React\\NDJson\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Streaming newline-delimited JSON (NDJSON) parser and encoder for ReactPHP.", + "homepage": "https://github.com/clue/reactphp-ndjson", + "keywords": [ + "NDJSON", + "json", + "jsonlines", + "newline", + "reactphp", + "streaming" + ], + "support": { + "issues": "https://github.com/clue/reactphp-ndjson/issues", + "source": "https://github.com/clue/reactphp-ndjson/tree/v1.3.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "install-path": "../clue/ndjson-react" + }, + { + "name": "composer/pcre", + "version": "3.3.2", + "version_normalized": "3.3.2.0", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<1.11.10" + }, + "require-dev": { + "phpstan/phpstan": "^1.12 || ^2", + "phpstan/phpstan-strict-rules": "^1 || ^2", + "phpunit/phpunit": "^8 || ^9" + }, + "time": "2024-11-12T16:29:46+00:00", + "type": "library", + "extra": { + "phpstan": { + "includes": [ + "extension.neon" + ] + }, + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "keywords": [ + "PCRE", + "preg", + "regex", + "regular expression" + ], + "support": { + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/3.3.2" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "install-path": "./pcre" + }, + { + "name": "composer/semver", + "version": "3.4.3", + "version_normalized": "3.4.3.0", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.11", + "symfony/phpunit-bridge": "^3 || ^7" + }, + "time": "2024-09-19T14:15:21+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Composer\\Semver\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + }, + { + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" + } + ], + "description": "Semver library that offers utilities, version constraint parsing and validation.", + "keywords": [ + "semantic", + "semver", + "validation", + "versioning" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/semver/issues", + "source": "https://github.com/composer/semver/tree/3.4.3" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "install-path": "./semver" + }, + { + "name": "composer/xdebug-handler", + "version": "3.0.5", + "version_normalized": "3.0.5.0", + "source": { + "type": "git", + "url": "https://github.com/composer/xdebug-handler.git", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef", + "shasum": "" + }, + "require": { + "composer/pcre": "^1 || ^2 || ^3", + "php": "^7.2.5 || ^8.0", + "psr/log": "^1 || ^2 || ^3" + }, + "require-dev": { + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "^8.5 || ^9.6 || ^10.5" + }, + "time": "2024-05-06T16:37:16+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Composer\\XdebugHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "John Stevenson", + "email": "john-stevenson@blueyonder.co.uk" + } + ], + "description": "Restarts a process without Xdebug.", + "keywords": [ + "Xdebug", + "performance" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/xdebug-handler/issues", + "source": "https://github.com/composer/xdebug-handler/tree/3.0.5" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "install-path": "./xdebug-handler" + }, + { + "name": "evenement/evenement", + "version": "v3.0.2", + "version_normalized": "3.0.2.0", + "source": { + "type": "git", + "url": "https://github.com/igorw/evenement.git", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/igorw/evenement/zipball/0a16b0d71ab13284339abb99d9d2bd813640efbc", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc", + "shasum": "" + }, + "require": { + "php": ">=7.0" + }, + "require-dev": { + "phpunit/phpunit": "^9 || ^6" + }, + "time": "2023-08-08T05:53:35+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Evenement\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + } + ], + "description": "Événement is a very simple event dispatching library for PHP", + "keywords": [ + "event-dispatcher", + "event-emitter" + ], + "support": { + "issues": "https://github.com/igorw/evenement/issues", + "source": "https://github.com/igorw/evenement/tree/v3.0.2" + }, + "install-path": "../evenement/evenement" + }, + { + "name": "fidry/cpu-core-counter", + "version": "1.2.0", + "version_normalized": "1.2.0.0", + "source": { + "type": "git", + "url": "https://github.com/theofidry/cpu-core-counter.git", + "reference": "8520451a140d3f46ac33042715115e290cf5785f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/8520451a140d3f46ac33042715115e290cf5785f", + "reference": "8520451a140d3f46ac33042715115e290cf5785f", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "fidry/makefile": "^0.2.0", + "fidry/php-cs-fixer-config": "^1.1.2", + "phpstan/extension-installer": "^1.2.0", + "phpstan/phpstan": "^1.9.2", + "phpstan/phpstan-deprecation-rules": "^1.0.0", + "phpstan/phpstan-phpunit": "^1.2.2", + "phpstan/phpstan-strict-rules": "^1.4.4", + "phpunit/phpunit": "^8.5.31 || ^9.5.26", + "webmozarts/strict-phpunit": "^7.5" + }, + "time": "2024-08-06T10:04:20+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Fidry\\CpuCoreCounter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com" + } + ], + "description": "Tiny utility to get the number of CPU cores.", + "keywords": [ + "CPU", + "core" + ], + "support": { + "issues": "https://github.com/theofidry/cpu-core-counter/issues", + "source": "https://github.com/theofidry/cpu-core-counter/tree/1.2.0" + }, + "funding": [ + { + "url": "https://github.com/theofidry", + "type": "github" + } + ], + "install-path": "../fidry/cpu-core-counter" + }, + { + "name": "psr/container", + "version": "2.0.2", + "version_normalized": "2.0.2.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "time": "2021-11-05T16:47:00+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "install-path": "../psr/container" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "version_normalized": "1.0.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "time": "2019-01-08T18:20:26+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "install-path": "../psr/event-dispatcher" + }, + { + "name": "psr/log", + "version": "2.0.0", + "version_normalized": "2.0.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376", + "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "time": "2021-07-14T16:41:46+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/2.0.0" + }, + "install-path": "../psr/log" + }, + { + "name": "react/cache", + "version": "v1.2.0", + "version_normalized": "1.2.0.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/cache.git", + "reference": "d47c472b64aa5608225f47965a484b75c7817d5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/cache/zipball/d47c472b64aa5608225f47965a484b75c7817d5b", + "reference": "d47c472b64aa5608225f47965a484b75c7817d5b", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "react/promise": "^3.0 || ^2.0 || ^1.1" + }, + "require-dev": { + "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35" + }, + "time": "2022-11-30T15:59:55+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "React\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Async, Promise-based cache interface for ReactPHP", + "keywords": [ + "cache", + "caching", + "promise", + "reactphp" + ], + "support": { + "issues": "https://github.com/reactphp/cache/issues", + "source": "https://github.com/reactphp/cache/tree/v1.2.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/cache" + }, + { + "name": "react/child-process", + "version": "v0.6.6", + "version_normalized": "0.6.6.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/child-process.git", + "reference": "1721e2b93d89b745664353b9cfc8f155ba8a6159" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/child-process/zipball/1721e2b93d89b745664353b9cfc8f155ba8a6159", + "reference": "1721e2b93d89b745664353b9cfc8f155ba8a6159", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.0", + "react/event-loop": "^1.2", + "react/stream": "^1.4" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/socket": "^1.16", + "sebastian/environment": "^5.0 || ^3.0 || ^2.0 || ^1.0" + }, + "time": "2025-01-01T16:37:48+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "React\\ChildProcess\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Event-driven library for executing child processes with ReactPHP.", + "keywords": [ + "event-driven", + "process", + "reactphp" + ], + "support": { + "issues": "https://github.com/reactphp/child-process/issues", + "source": "https://github.com/reactphp/child-process/tree/v0.6.6" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/child-process" + }, + { + "name": "react/dns", + "version": "v1.13.0", + "version_normalized": "1.13.0.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/dns.git", + "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/dns/zipball/eb8ae001b5a455665c89c1df97f6fb682f8fb0f5", + "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "react/cache": "^1.0 || ^0.6 || ^0.5", + "react/event-loop": "^1.2", + "react/promise": "^3.2 || ^2.7 || ^1.2.1" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/async": "^4.3 || ^3 || ^2", + "react/promise-timer": "^1.11" + }, + "time": "2024-06-13T14:18:03+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "React\\Dns\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Async DNS resolver for ReactPHP", + "keywords": [ + "async", + "dns", + "dns-resolver", + "reactphp" + ], + "support": { + "issues": "https://github.com/reactphp/dns/issues", + "source": "https://github.com/reactphp/dns/tree/v1.13.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/dns" + }, + { + "name": "react/event-loop", + "version": "v1.5.0", + "version_normalized": "1.5.0.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/event-loop.git", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "suggest": { + "ext-pcntl": "For signal handling support when using the StreamSelectLoop" + }, + "time": "2023-11-13T13:48:05+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "React\\EventLoop\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.", + "keywords": [ + "asynchronous", + "event-loop" + ], + "support": { + "issues": "https://github.com/reactphp/event-loop/issues", + "source": "https://github.com/reactphp/event-loop/tree/v1.5.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/event-loop" + }, + { + "name": "react/promise", + "version": "v3.2.0", + "version_normalized": "3.2.0.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/promise.git", + "reference": "8a164643313c71354582dc850b42b33fa12a4b63" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/promise/zipball/8a164643313c71354582dc850b42b33fa12a4b63", + "reference": "8a164643313c71354582dc850b42b33fa12a4b63", + "shasum": "" + }, + "require": { + "php": ">=7.1.0" + }, + "require-dev": { + "phpstan/phpstan": "1.10.39 || 1.4.10", + "phpunit/phpunit": "^9.6 || ^7.5" + }, + "time": "2024-05-24T10:39:05+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "React\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "A lightweight implementation of CommonJS Promises/A for PHP", + "keywords": [ + "promise", + "promises" + ], + "support": { + "issues": "https://github.com/reactphp/promise/issues", + "source": "https://github.com/reactphp/promise/tree/v3.2.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/promise" + }, + { + "name": "react/socket", + "version": "v1.16.0", + "version_normalized": "1.16.0.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/socket.git", + "reference": "23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/socket/zipball/23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1", + "reference": "23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.0", + "react/dns": "^1.13", + "react/event-loop": "^1.2", + "react/promise": "^3.2 || ^2.6 || ^1.2.1", + "react/stream": "^1.4" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/async": "^4.3 || ^3.3 || ^2", + "react/promise-stream": "^1.4", + "react/promise-timer": "^1.11" + }, + "time": "2024-07-26T10:38:09+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "React\\Socket\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP", + "keywords": [ + "Connection", + "Socket", + "async", + "reactphp", + "stream" + ], + "support": { + "issues": "https://github.com/reactphp/socket/issues", + "source": "https://github.com/reactphp/socket/tree/v1.16.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/socket" + }, + { + "name": "react/stream", + "version": "v1.4.0", + "version_normalized": "1.4.0.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/stream.git", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/stream/zipball/1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.8", + "react/event-loop": "^1.2" + }, + "require-dev": { + "clue/stream-filter": "~1.2", + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "time": "2024-06-11T12:45:25+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "React\\Stream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP", + "keywords": [ + "event-driven", + "io", + "non-blocking", + "pipe", + "reactphp", + "readable", + "stream", + "writable" + ], + "support": { + "issues": "https://github.com/reactphp/stream/issues", + "source": "https://github.com/reactphp/stream/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "install-path": "../react/stream" + }, + { + "name": "sebastian/diff", + "version": "5.1.1", + "version_normalized": "5.1.1.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/c41e007b4b62af48218231d6c2275e4c9b975b2e", + "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "phpunit/phpunit": "^10.0", + "symfony/process": "^6.4" + }, + "time": "2024-03-02T07:15:17+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "5.1-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "security": "https://github.com/sebastianbergmann/diff/security/policy", + "source": "https://github.com/sebastianbergmann/diff/tree/5.1.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "install-path": "../sebastian/diff" + }, + { + "name": "symfony/console", + "version": "v6.4.23", + "version_normalized": "6.4.23.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "9056771b8eca08d026cd3280deeec3cfd99c4d93" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/9056771b8eca08d026cd3280deeec3cfd99c4d93", + "reference": "9056771b8eca08d026cd3280deeec3cfd99c4d93", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^5.4|^6.0|^7.0" + }, + "conflict": { + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/stopwatch": "^5.4|^6.0|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" + }, + "time": "2025-06-27T19:37:22+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command-line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v6.4.23" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/console" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.6.0", + "version_normalized": "3.6.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "time": "2024-09-25T14:21:43+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "function.php" + ] + }, + "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": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/deprecation-contracts" + }, + { + "name": "symfony/event-dispatcher", + "version": "v6.4.13", + "version_normalized": "6.4.13.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "0ffc48080ab3e9132ea74ef4e09d8dcf26bf897e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/0ffc48080ab3e9132ea74ef4e09d8dcf26bf897e", + "reference": "0ffc48080ab3e9132ea74ef4e09d8dcf26bf897e", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/error-handler": "^5.4|^6.0|^7.0", + "symfony/expression-language": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^5.4|^6.0|^7.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^5.4|^6.0|^7.0" + }, + "time": "2024-09-25T14:18:03+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/event-dispatcher" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.6.0", + "version_normalized": "3.6.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "59eb412e93815df44f05f342958efa9f46b1e586" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/59eb412e93815df44f05f342958efa9f46b1e586", + "reference": "59eb412e93815df44f05f342958efa9f46b1e586", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "time": "2024-09-25T14:21:43+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "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": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.6.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/event-dispatcher-contracts" + }, + { + "name": "symfony/filesystem", + "version": "v6.4.13", + "version_normalized": "6.4.13.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", + "reference": "4856c9cf585d5a0313d8d35afd681a526f038dd3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/4856c9cf585d5a0313d8d35afd681a526f038dd3", + "reference": "4856c9cf585d5a0313d8d35afd681a526f038dd3", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8" + }, + "require-dev": { + "symfony/process": "^5.4|^6.4|^7.0" + }, + "time": "2024-10-25T15:07:50+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides basic utilities for the filesystem", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/filesystem/tree/v6.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/filesystem" + }, + { + "name": "symfony/finder", + "version": "v6.4.17", + "version_normalized": "6.4.17.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7", + "reference": "1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0|^7.0" + }, + "time": "2024-12-29T13:51:37+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v6.4.17" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/finder" + }, + { + "name": "symfony/options-resolver", + "version": "v6.4.16", + "version_normalized": "6.4.16.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/options-resolver.git", + "reference": "368128ad168f20e22c32159b9f761e456cec0c78" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/368128ad168f20e22c32159b9f761e456cec0c78", + "reference": "368128ad168f20e22c32159b9f761e456cec0c78", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "time": "2024-11-20T10:57:02+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\OptionsResolver\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an improved replacement for the array_replace PHP function", + "homepage": "https://symfony.com", + "keywords": [ + "config", + "configuration", + "options" + ], + "support": { + "source": "https://github.com/symfony/options-resolver/tree/v6.4.16" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/options-resolver" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-ctype" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe", + "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "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 for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-intl-grapheme" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "3833d7255cc303546435cb650316bff708a1c75c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c", + "reference": "3833d7255cc303546435cb650316bff708a1c75c", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "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 for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-intl-normalizer" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "time": "2024-12-23T08:48:59+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "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 for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-mbstring" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608", + "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "time": "2025-01-02T08:10:11+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-php80" + }, + { + "name": "symfony/polyfill-php81", + "version": "v1.32.0", + "version_normalized": "1.32.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", + "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "time": "2024-09-09T11:45:10+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php81\\": "" + }, + "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.1+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php81/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/polyfill-php81" + }, + { + "name": "symfony/process", + "version": "v6.4.20", + "version_normalized": "6.4.20.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "e2a61c16af36c9a07e5c9906498b73e091949a20" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/e2a61c16af36c9a07e5c9906498b73e091949a20", + "reference": "e2a61c16af36c9a07e5c9906498b73e091949a20", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "time": "2025-03-10T17:11:00+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Executes commands in sub-processes", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v6.4.20" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/process" + }, + { + "name": "symfony/service-contracts", + "version": "v3.6.0", + "version_normalized": "3.6.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4", + "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "time": "2025-04-25T09:37:31+00:00", + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "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": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/v3.6.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/service-contracts" + }, + { + "name": "symfony/stopwatch", + "version": "v6.4.19", + "version_normalized": "6.4.19.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/stopwatch.git", + "reference": "dfe1481c12c06266d0c3d58c0cb4b09bd497ab9c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/dfe1481c12c06266d0c3d58c0cb4b09bd497ab9c", + "reference": "dfe1481c12c06266d0c3d58c0cb4b09bd497ab9c", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/service-contracts": "^2.5|^3" + }, + "time": "2025-02-21T10:06:30+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Stopwatch\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides a way to profile code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/stopwatch/tree/v6.4.19" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/stopwatch" + }, + { + "name": "symfony/string", + "version": "v6.4.21", + "version_normalized": "6.4.21.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "73e2c6966a5aef1d4892873ed5322245295370c6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/73e2c6966a5aef1d4892873ed5322245295370c6", + "reference": "73e2c6966a5aef1d4892873ed5322245295370c6", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.5" + }, + "require-dev": { + "symfony/error-handler": "^5.4|^6.0|^7.0", + "symfony/http-client": "^5.4|^6.0|^7.0", + "symfony/intl": "^6.2|^7.0", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^5.4|^6.0|^7.0" + }, + "time": "2025-04-18T15:23:29+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v6.4.21" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "install-path": "../symfony/string" + } + ], + "dev": false, + "dev-package-names": [] +} @@ -1,51 +1,40 @@ #!/bin/bash NAME=$(sed -n '/^Name:/{s/.* //;p}' *.spec) +DATE=$(sed -n '/^%global gh_date/{s/.* //;p}' $NAME.spec) OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec) PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec) VERSION=$(sed -n '/^Version:/{s/.* //;p}' $NAME.spec) COMMIT=$(sed -n '/^%global gh_commit/{s/.* //;p}' $NAME.spec) SHORT=${COMMIT:0:7} -echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION, Commit=$COMMIT\n" +DATE=$(date -d "$DATE -4 days" +%Y-%m-%d) -echo "Cloning..." -git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT +if [ -f $NAME-$VERSION-$SHORT.tgz ]; then + echo "Skip $NAME-$VERSION-$SHORT.tgz" +else + echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION, Commit=$COMMIT, Date=$DATE\n" -echo "Getting commit..." -pushd $PROJECT-$COMMIT -git checkout $COMMIT -cp composer.json ../composer.json -popd + echo "Cloning..." + git clone --shallow-since=$DATE https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT || exit 1 -echo "Archiving..." -tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT + echo "Getting commit..." + pushd $PROJECT-$COMMIT + git checkout $COMMIT || exit1 + cp composer.json ../ -echo "Cleaning..." -rm -rf $PROJECT-$COMMIT + composer config platform.php 8.1.99 + # see https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/dev-tools/build.sh + # some dev dep cannot be satisfied but are not needed + composer remove --dev infection/infection --no-update + composer install --no-interaction --no-progress --no-dev --no-scripts --optimize-autoloader + cp vendor/composer/installed.json ../ + popd -PROJECT=diff -OWNER=$(sed -n '/^%global gh_diff_owner/{s/.* //;p}' $NAME.spec) -VERSION=$(sed -n '/^%global gh_diff_version/{s/.* //;p}' $NAME.spec) -COMMIT=$(sed -n '/^%global gh_diff_commit/{s/.* //;p}' $NAME.spec) -SHORT=${COMMIT:0:7} - -echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION, Commit=$COMMIT\n" - -echo "Cloning..." -git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT - -echo "Getting commit..." -pushd $PROJECT-$COMMIT -git checkout $COMMIT -cp composer.json ../composer-diff.json -popd - -echo "Archiving..." -tar czf $NAME-$PROJECT-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT - -echo "Cleaning..." -rm -rf $PROJECT-$COMMIT + echo "Archiving..." + tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT -echo "Done." + echo "Cleaning..." + rm -rf $PROJECT-$COMMIT +fi diff --git a/php-cs-fixer-autoload.patch b/php-cs-fixer-autoload.patch index 632dd31..a14e08a 100644 --- a/php-cs-fixer-autoload.patch +++ b/php-cs-fixer-autoload.patch @@ -1,70 +1,12 @@ diff -up ./php-cs-fixer.rpm ./php-cs-fixer ---- ./php-cs-fixer.rpm 2019-11-04 09:02:13.808580217 +0100 -+++ ./php-cs-fixer 2019-11-04 09:03:24.388258652 +0100 -@@ -43,38 +43,7 @@ set_error_handler(function ($severity, $ - } - }); - --$require = true; --if (class_exists('Phar')) { -- // Maybe this file is used as phar-stub? Let's try! -- try { -- Phar::mapPhar('php-cs-fixer.phar'); -- require_once 'phar://php-cs-fixer.phar/vendor/autoload.php'; -- $require = false; -- } catch (PharException $e) { -- } --} -- --if ($require) { -- // OK, it's not, let give Composer autoloader a try! -- $possibleFiles = [__DIR__.'/../../autoload.php', __DIR__.'/../autoload.php', __DIR__.'/vendor/autoload.php']; -- $file = null; -- foreach ($possibleFiles as $possibleFile) { -- if (file_exists($possibleFile)) { -- $file = $possibleFile; -- -- break; -- } -- } -- -- if (null === $file) { -- throw new RuntimeException('Unable to locate autoload.php file.'); -- } -- -- require_once $file; -- -- unset($possibleFiles, $possibleFile, $file); --} --unset($require); -+require_once '/usr/share/php/PhpCsFixer/autoload.php'; - - use Composer\XdebugHandler\XdebugHandler; - use PhpCsFixer\Console\Application; -diff -up ./src/Console/Command/HelpCommand.php.rpm ./src/Console/Command/HelpCommand.php ---- ./src/Console/Command/HelpCommand.php.rpm 2019-11-04 09:01:59.000000000 +0100 -+++ ./src/Console/Command/HelpCommand.php 2019-11-04 09:02:13.808580217 +0100 -@@ -377,6 +377,8 @@ EOF - { - static $version = null; - -+ return Application::VERSION; -+ - if (null !== $version) { - return $version; - } -diff -up ./tests/AutoReview/ProjectCodeTest.php.rpm ./tests/AutoReview/ProjectCodeTest.php ---- ./tests/AutoReview/ProjectCodeTest.php.rpm 2019-11-04 09:01:59.000000000 +0100 -+++ ./tests/AutoReview/ProjectCodeTest.php 2019-11-04 09:02:13.808580217 +0100 -@@ -473,8 +473,11 @@ final class ProjectCodeTest extends Test - ->files() - ->name('*.php') - ->in(__DIR__.'/../../src') -+ ->notName('autoload.php') - ->exclude([ - 'Resources', -+ 'diff', -+ 'tests', - ]) - ; - +--- ./php-cs-fixer.rpm 2022-01-14 15:01:36.281743286 +0100 ++++ ./php-cs-fixer 2022-01-14 15:01:59.983646138 +0100 +@@ -81,7 +81,7 @@ set_error_handler(static function ($seve + + if ($require) { + // OK, it's not, let give Composer autoloader a try! +- $possibleFiles = [__DIR__.'/../../autoload.php', __DIR__.'/../autoload.php', __DIR__.'/vendor/autoload.php']; ++ $possibleFiles = ['/usr/share/php-cs-fixer/vendor/autoload.php']; + $file = null; + foreach ($possibleFiles as $possibleFile) { + if (file_exists($possibleFile)) { diff --git a/php-cs-fixer.spec b/php-cs-fixer.spec index 13234ae..485df35 100644 --- a/php-cs-fixer.spec +++ b/php-cs-fixer.spec @@ -1,271 +1,79 @@ # remirepo/fedora spec file for php-cs-fixer # -# Copyright (c) 2016-2019 Remi Collet -# License: CC-BY-SA -# http://creativecommons.org/licenses/by-sa/4.0/ +# SPDX-FileCopyrightText: Copyright 2016-2025 Remi Collet +# SPDX-License-Identifier: CECILL-2.1 +# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt # # Please, preserve the changelog entries # +# remirepo:3 # For compatibility with SCL %undefine __brp_mangle_shebangs -%global gh_commit ceaff36bee1ed3f1bbbedca36d2528c0826c336d +%global gh_commit 0e3c484cef0ae9314b0f85986a36296087432c40 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) -#global gh_date 20150717 +%global gh_date 2025-06-30 %global gh_owner FriendsOfPHP %global gh_project PHP-CS-Fixer -%global php_home %{_datadir}/php -%global with_tests 0%{!?_without_tests:1} - -# Bundled this fork which is not designed for use outside of php-cs-fixer -# https://github.com/PHP-CS-Fixer/diff/releases -%global gh_diff_owner PHP-CS-Fixer -%global gh_diff_version 1.3.0 -%global gh_diff_commit 78bb099e9c16361126c86ce82ec4405ebab8e756 -%global gh_diff_short %(c=%{gh_diff_commit}; echo ${c:0:7}) Name: php-cs-fixer -Version: 2.16.0 -Release: 1%{?gh_date:.%{gh_date}git%{gh_short}}%{?dist} -Summary: A tool to automatically fix PHP code style +Version: 3.76.0 +Release: 1%{?dist} +Summary: PHP Coding Standards Fixer -License: MIT +# see bundled list below, SPDX +License: MIT AND BSD-3-Clause URL: https://github.com/%{gh_owner}/%{gh_project} # git snapshot to get upstream test suite Source0: %{name}-%{version}-%{gh_short}.tgz -Source1: %{name}-diff-%{gh_diff_version}-%{gh_diff_short}.tgz Source2: makesrc.sh # Use our autoloader Patch0: %{name}-autoload.patch BuildArch: noarch -%if %{with_tests} -# For tests -BuildRequires: php(language) >= 5.6 -BuildRequires: php-tokenizer -# remirepo:1 -%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 -BuildRequires: (php-composer(composer/semver) >= 1.4 with php-composer(composer/semver) < 2) -BuildRequires: (php-composer(composer/xdebug-handler) >= 1.0 with php-composer(composer/xdebug-handler) < 2) -BuildRequires: (php-composer(doctrine/annotations) >= 1.2 with php-composer(doctrine/annotations) < 2) -BuildRequires: (php-composer(symfony/polyfill-php70) >= 1.0 with php-composer(symfony/polyfill-php70) < 2) -BuildRequires: (php-composer(symfony/polyfill-php72) >= 1.4 with php-composer(symfony/polyfill-php72) < 2) -BuildRequires: (php-composer(sebastian/diff) >= 1.4 with php-composer(sebastian/diff) < 2) -# remirepo:7 -%else -BuildRequires: php-composer-semver >= 1.4 -BuildRequires: php-composer-xdebug-handler >= 1.0 -BuildRequires: php-doctrine-annotations >= 1.2 -BuildRequires: php-symfony-polyfill >= 1.4 -BuildRequires: php-phpunit-diff >= 1.4 -%endif -BuildRequires: php-symfony3-console -BuildRequires: php-symfony3-event-dispatcher -BuildRequires: php-symfony3-filesystem -BuildRequires: php-symfony3-finder -BuildRequires: php-symfony3-options-resolver -BuildRequires: php-symfony3-process -BuildRequires: php-symfony3-stopwatch -BuildRequires: php-mbstring -BuildRequires: php-xml -BuildRequires: php-reflection -BuildRequires: php-dom +BuildRequires: php(language) >= 8.1 +BuildRequires: php-cli BuildRequires: php-json -BuildRequires: php-pcre -BuildRequires: php-phar -BuildRequires: php-spl -BuildRequires: php-xml -# Missing dependency for Console -BuildRequires: php-symfony3-debug -BuildRequires: php-symfony3-debug -# From composer.json, "require-dev": { -# NOTICE: listener disabled during test suite -# "johnkary/phpunit-speedtrap": "^1.1 || ^2.0 || ^3.0", -# "keradus/cli-executor": "^1.2", -# "justinrainbow/json-schema": "^5.0", -# "mikey179/vfsstream": "^1.6", -# "php-coveralls/php-coveralls": "^2.1", -# "php-cs-fixer/accessible-object": "^1.0", -# "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.1", -# "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.1", -# "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.1", -# "phpunitgoodpractices/traits": "^1.8", -# "symfony/phpunit-bridge": "^4.3", -# "symfony/yaml": "^3.0 || ^4.0" -# ignored as test using it fail strangely -#BuildRequires: php-composer(keradus/cli-executor) < 2 -#BuildRequires: php-composer(keradus/cli-executor) >= 1.0 -# remirepo:1 -%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 -BuildRequires: (php-composer(justinrainbow/json-schema) >= 5.0 with php-composer(justinrainbow/json-schema) < 6) -BuildRequires: (php-composer(mikey179/vfsstream) >= 1.6 with php-composer(mikey179/vfsstream) < 2) -BuildRequires: (php-composer(php-cs-fixer/accessible-object) >= 1.0 with php-composer(php-cs-fixer/accessible-object) < 2) -BuildRequires: (php-composer(php-cs-fixer/phpunit-constraint-isidenticalstring) >= 1.1 with php-composer(php-cs-fixer/phpunit-constraint-isidenticalstring) < 2) -BuildRequires: (php-composer(php-cs-fixer/phpunit-constraint-xmlmatchesxsd) >= 1.1 with php-composer(php-cs-fixer/phpunit-constraint-xmlmatchesxsd) < 2) -BuildRequires: (php-composer(phpunitgoodpractices/traits) >= 1.8 with php-composer(phpunitgoodpractices/traits) < 2) -%if 0%{?fedora} >= 28 || 0%{?rhel} >= 8 -%global phpunit %{_bindir}/phpunit7 -BuildRequires: phpunit7 >= 7.1 -%else -%global phpunit %{_bindir}/phpunit6 -BuildRequires: phpunit6 >= 6.5.14 -%endif -# remirepo:10 -%else -BuildRequires: php-justinrainbow-json-schema5 -BuildRequires: php-mikey179-vfsstream >= 1.6 -BuildRequires: php-cs-fixer-accessible-object -BuildRequires: php-cs-fixer-phpunit-constraint-isidenticalstring -BuildRequires: php-cs-fixer-phpunit-constraint-xmlmatchesxsd -BuildRequires: php-phpunitgoodpractices-traits >= 1.5.1 -%global phpunit %{_bindir}/phpunit -BuildRequires: php-phpunit-PHPUnit >= 5.7.23 -%endif -%endif -# Autoloader -BuildRequires: php-fedora-autoloader-devel - -# From composer.json, "require": { -# "php": "^5.6 || ^7.0", -# "ext-json": "*", -# "ext-tokenizer": "*", -# "composer/semver": "^1.4", -# "composer/xdebug-handler": "^1.2", -# "doctrine/annotations": "^1.2", -# Bundled -# "php-cs-fixer/diff": "^1.3", -# "symfony/console": "^3.4.17 || ^4.1.6", -# "symfony/event-dispatcher": "^3.0 || ^4.0", -# "symfony/filesystem": "^3.0 || ^4.0", -# "symfony/finder": "^3.0 || ^4.0", -# "symfony/options-resolver": "^3.0 || ^4.0", -# "symfony/polyfill-php70": "^1.0", -# "symfony/polyfill-php72": "^1.4", -# "symfony/polyfill-xml": "^1.3", -# "symfony/process": "^3.0 || ^4.0", -# "symfony/stopwatch": "^3.0 || ^4.0" -Requires: php(language) >= 5.6 +BuildRequires: composer-generators >= 0.1.1 + +# see composer.json and makesrc.sh +Requires: php(language) >= 8.1 Requires: php-json Requires: php-tokenizer -# remirepo:1 -%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 -Requires: (php-composer(composer/semver) >= 1.4 with php-composer(composer/semver) < 2) -Requires: (php-composer(composer/xdebug-handler) >= 1.2 with php-composer(composer/xdebug-handler) < 2) -Requires: (php-composer(doctrine/annotations) >= 1.2 with php-composer(doctrine/annotations) < 2) -Requires: (php-composer(symfony/polyfill-php70) >= 1.0 with php-composer(symfony/polyfill-php70) < 2) -Requires: (php-composer(symfony/polyfill-php72) >= 1.4 with php-composer(symfony/polyfill-php72) < 2) -Requires: (php-composer(sebastian/diff) >= 1.4 with php-composer(sebastian/diff) < 2) -# remirepo:7 -%else -Requires: php-composer-semver >= 1.4 -Requires: php-composer-xdebug-handler >= 1.2 -Requires: php-doctrine-annotations >= 1.2 -Requires: php-symfony-polyfill >= 1.4 -Requires: php-phpunit-diff >= 1.4 -%endif -Requires: php-symfony3-console -Requires: php-symfony3-event-dispatcher -Requires: php-symfony3-filesystem -Requires: php-symfony3-finder -Requires: php-symfony3-options-resolver -Requires: php-symfony3-process -Requires: php-symfony3-stopwatch -# Missing dependency for Console -Requires: php-symfony3-debug -# From composer.json, "suggest": { -# "ext-mbstring": "For handling non-UTF8 characters in cache signature.", -# "php-cs-fixer/phpunit-constraint-isidenticalstring": "For IsIdenticalString constraint.", -# "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "For XmlMatchesXsd constraint.", -# "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible." -Requires: php-mbstring -# remirepo:1 -%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 -Recommends: php-composer(php-cs-fixer/phpunit-constraint-isidenticalstring) -Recommends: php-composer(php-cs-fixer/phpunit-constraint-xmlmatchesxsd) -# remirepo:1 -%endif -# From phpcompatinfo report for version 2.4.0 -Requires: php-cli -Requires: php-reflection +# From phpcompatinfo report for version 3.5.0 Requires: php-dom -Requires: php-pcre -Requires: php-phar -Requires: php-spl -Requires: php-xml -# Autoloader -Requires: php-composer(fedora/autoloader) +Requires: php-intl +Requires: php-mbstring -Provides: bundled(php-cs-fixer/diff) = %{gh_diff_version} -Provides: php-composer(friendsofphp/php-cs-fixer) = %{version} +# Package was renamed +Obsoletes: php-cs-fixer3 < 3.5 +Provides: php-cs-fixer3 = %{version} %description -The PHP Coding Standards Fixer tool fixes most issues in your code when you -want to follow the PHP coding standards as defined in the PSR-1 and PSR-2 -documents and many more. +The PHP Coding Standards Fixer (PHP CS Fixer) tool fixes your code to follow +standards; whether you want to follow PHP coding standards as defined in the +PSR-1, PSR-2, etc., or other community driven ones like the Symfony one. You +can also define your (team's) style through configuration. -If you are already using a linter to identify coding standards problems in -your code, you know that fixing them by hand is tedious, especially on large +It can modernize your code (like converting the pow function to the ** operator +on PHP 5.6) and (micro) optimize it. + +If you are already using a linter to identify coding standards problems in your +code, you know that fixing them by hand is tedious, especially on large projects. This tool does not only detect them, but also fixes them for you. %prep -%setup -q -n %{gh_project}-%{gh_commit} -a1 -%patch0 -p1 -b .rpm -mv diff-%{gh_diff_commit}/src src/diff - -find src -name \*rpm -delete -print - -# from composer.json, "autoload" / "classmap" -TESTS=" - tests/Test/AbstractFixerTestCase.php - tests/Test/AbstractIntegrationCaseFactory.php - tests/Test/AbstractIntegrationTestCase.php - tests/Test/Assert/AssertTokensTrait.php - tests/Test/IntegrationCase.php - tests/Test/IntegrationCaseFactory.php - tests/Test/IntegrationCaseFactoryInterface.php - tests/Test/InternalIntegrationCaseFactory.php - tests/TestCase.php -" -for i in $TESTS; do - mkdir -p src/$(dirname $i) - cp -p $i src/$i -done - -# fix dev-tools path -sed -e 's:../../../dev-tools/::' -i src/Console/Command/HelpCommand.php -cp -pr dev-tools/ci-integration.sh src/Console/Command/ - -# tolerant because conditional definition in tests/TestCase.php -phpab --template fedora \ - --tolerant \ - --output src/autoload.php \ - src/tests src/diff - -cat << 'EOF' | tee -a src/autoload.php - -\Fedora\Autoloader\Autoload::addPsr4('PhpCsFixer\\', __DIR__); -\Fedora\Autoloader\Dependencies::required([ - '%{php_home}/Composer/Semver/autoload.php', - '%{php_home}/Composer/XdebugHandler/autoload.php', - '%{php_home}/Doctrine/Common/Annotations/autoload.php', - '%{php_home}/Symfony3/Component/Console/autoload.php', - '%{php_home}/Symfony3/Component/EventDispatcher/autoload.php', - '%{php_home}/Symfony3/Component/Filesystem/autoload.php', - '%{php_home}/Symfony3/Component/Finder/autoload.php', - '%{php_home}/Symfony3/Component/OptionsResolver/autoload.php', - '%{php_home}/Symfony3/Component/Process/autoload.php', - '%{php_home}/Symfony3/Component/Stopwatch/autoload.php', - '%{php_home}/Symfony/Polyfill/autoload.php', -]); -\Fedora\Autoloader\Dependencies::optional([ - '%{php_home}/PhpCsFixer/PhpunitConstraintIsIdenticalString/autoload.php', - '%{php_home}/PhpCsFixer/PhpunitConstraintXmlMatchesXsd/autoload.php', -]); -EOF +%setup -q -n %{gh_project}-%{gh_commit} +%patch -P0 -p1 -b .rpm + +# Fix version +#sed -e '/VERSION/s/3.68.6-DEV/%{version}/' -i src/Console/Application.php +# check version +grep "'%{version}'" src/Console/Application.php %build @@ -274,72 +82,398 @@ EOF %install : Library -mkdir -p %{buildroot}%{php_home} -cp -pr src %{buildroot}%{php_home}/PhpCsFixer +mkdir -p %{buildroot}%{_datadir}/%{name} +cp -pr src %{buildroot}%{_datadir}/%{name}/src +cp -pr vendor %{buildroot}%{_datadir}/%{name}/vendor : Command install -Dpm755 %{name} %{buildroot}%{_bindir}/%{name} %check -%if %{with_tests} -mkdir vendor -cat << 'EOF' | tee vendor/autoload.php -<?php -// Force version for local, when both versions are available -\Fedora\Autoloader\Dependencies::required([ - '%{php_home}/org/bovigo/vfs/autoload.php', - '%{php_home}/JsonSchema5/autoload.php', - '%{php_home}/PhpCsFixer/AccessibleObject/autoload.php', - '%{php_home}/PHPUnitGoodPractices/Polyfill/autoload.php', - '%{buildroot}%{php_home}/PhpCsFixer/autoload.php', -]); -\Fedora\Autoloader\Autoload::addPsr4('PhpCsFixer\\Tests\\', dirname(__DIR__) . '/tests'); -EOF - -# Fix integration test -sed -e "/README.rst/s:__DIR__.*':'$PWD/README.rst':" \ - -i tests/Console/Command/ReadmeCommandTest.php -# test using keradus/cli-executor -rm tests/Smoke/CiIntegrationTest.php -rm tests/Smoke/StdinTest.php -rm tests/Smoke/InstallViaComposerTest.php -# strange failure -rm tests/Fixtures/Integration/priority/combine_consecutive_issets,no_singleline_whitespace_before_semicolons.test - -# Disable listener -sed -e '/<listeners>/,/<\/listeners>/d' phpunit.xml.dist >phpunit.xml - -# Redirect to buildroot -sed -e 's:%{php_home}:%{buildroot}%{php_home}:' -i %{name} - -ret=0 -# skip testFix74Deprecated as we don't use symfony/phpunit-bridge -for cmdarg in "php %{phpunit}" php71 php72 php73 php74; do - if which $cmdarg; then - set $cmdarg - $1 -d memory_limit=2G ${2:-%{_bindir}/phpunit7} \ - --filter '^((?!(testFixerContainsAllPhpunitStaticMethodsInItsList|testFix74Deprecated)).)*$' \ - || ret=1 - fi -done -exit $ret -%else -: Test suite disabled -%endif +sed -e 's:%{_datadir}:%{buildroot}%{_datadir}:' -i %{name} +PHP_CS_FIXER_IGNORE_ENV=1 ./%{name} --version +PHP_CS_FIXER_IGNORE_ENV=1 ./%{name} --version | grep %{version} %files -# remirepo:1 -%{!?_licensedir:%global license %%doc} %license LICENSE %doc composer.json -%doc *.md *.rst -%{php_home}/PhpCsFixer +%doc vendor/composer/installed.json +%doc *.md +%{_datadir}/%{name} %{_bindir}/%{name} %changelog +* Tue Jul 1 2025 Remi Collet <remi@remirepo.net> - 3.76.0-1 +- update to 3.76.0 + +* Tue Apr 1 2025 Remi Collet <remi@remirepo.net> - 3.75.0-1 +- update to 3.75.0 +- re-license spec file to CECILL-2.1 + +* Fri Mar 28 2025 Remi Collet <remi@remirepo.net> - 3.74.0-1 +- update to 3.74.0 + +* Thu Mar 20 2025 Remi Collet <remi@remirepo.net> - 3.73.1-1 +- update to 3.73.1 + +* Thu Mar 13 2025 Remi Collet <remi@remirepo.net> - 3.72.0-1 +- update to 3.72.0 + +* Sat Mar 8 2025 Remi Collet <remi@remirepo.net> - 3.71.0-1 +- update to 3.71.0 + +* Tue Mar 4 2025 Remi Collet <remi@remirepo.net> - 3.70.2-1 +- update to 3.70.2 + +* Mon Mar 3 2025 Remi Collet <remi@remirepo.net> - 3.70.1-1 +- update to 3.70.1 + +* Sun Feb 23 2025 Remi Collet <remi@remirepo.net> - 3.70.0-1 +- update to 3.70.0 + +* Wed Feb 19 2025 Remi Collet <remi@remirepo.net> - 3.69.1-1 +- update to 3.69.1 + +* Mon Feb 17 2025 Remi Collet <remi@remirepo.net> - 3.69.0-1 +- update to 3.69.0 + +* Fri Jan 31 2025 Remi Collet <remi@remirepo.net> - 3.68.5-1 +- update to 3.68.5 + +* Thu Jan 30 2025 Remi Collet <remi@remirepo.net> - 3.68.4-1 +- update to 3.68.4 +- always use composer-generators + +* Tue Jan 28 2025 Remi Collet <remi@remirepo.net> - 3.68.3-1 +- update to 3.68.3 + +* Fri Jan 17 2025 Remi Collet <remi@remirepo.net> - 3.68.1-1 +- update to 3.68.1 + +* Tue Jan 14 2025 Remi Collet <remi@remirepo.net> - 3.68.0-1 +- update to 3.68.0 + +* Mon Jan 13 2025 Remi Collet <remi@remirepo.net> - 3.67.1-1 +- update to 3.67.1 + +* Wed Jan 8 2025 Remi Collet <remi@remirepo.net> - 3.67.0-1 +- update to 3.67.0 + +* Tue Jan 7 2025 Remi Collet <remi@remirepo.net> - 3.66.2-1 +- update to 3.66.2 + +* Mon Jan 6 2025 Remi Collet <remi@remirepo.net> - 3.66.1-1 +- update to 3.66.1 + +* Mon Dec 30 2024 Remi Collet <remi@remirepo.net> - 3.66.0-2 +- rebuild with new composer-generators + +* Mon Dec 30 2024 Remi Collet <remi@remirepo.net> - 3.66.0-1 +- update to 3.66.0 +- add option to use composer-generators + +* Mon Nov 25 2024 Remi Collet <remi@remirepo.net> - 3.65.0-1 +- update to 3.65.0 + +* Sat Aug 31 2024 Remi Collet <remi@remirepo.net> - 3.64.0-1 +- update to 3.64.0 + +* Wed Aug 28 2024 Remi Collet <remi@remirepo.net> - 3.63.2-1 +- update to 3.63.2 + +* Tue Aug 27 2024 Remi Collet <remi@remirepo.net> - 3.63.1-1 +- update to 3.63.1 + +* Thu Aug 8 2024 Remi Collet <remi@remirepo.net> - 3.62.0-1 +- update to 3.62.0 + +* Thu Aug 1 2024 Remi Collet <remi@remirepo.net> - 3.61.1-1 +- update to 3.61.1 + +* Wed Jul 31 2024 Remi Collet <remi@remirepo.net> - 3.61.0-1 +- update to 3.61.0 + +* Thu Jul 25 2024 Remi Collet <remi@remirepo.net> - 3.60.0-1 +- update to 3.60.0 + +* Tue Jul 2 2024 Remi Collet <remi@remirepo.net> - 3.59.3-1 +- update to 3.59.3 + +* Thu May 30 2024 Remi Collet <remi@remirepo.net> - 3.58.1-1 +- update to 3.58.1 + +* Wed May 29 2024 Remi Collet <remi@remirepo.net> - 3.58.0-1 +- update to 3.58.0 + +* Wed May 22 2024 Remi Collet <remi@remirepo.net> - 3.57.2-1 +- update to 3.57.2 + +* Thu May 16 2024 Remi Collet <remi@remirepo.net> - 3.57.1-1 +- update to 3.57.1 + +* Mon May 13 2024 Remi Collet <remi@remirepo.net> - 3.56.1-1 +- update to 3.56.1 + +* Wed Apr 17 2024 Remi Collet <remi@remirepo.net> - 3.54.0-1 +- update to 3.54.0 + +* Tue Apr 9 2024 Remi Collet <remi@remirepo.net> - 3.53.0-1 +- update to 3.53.0 +- bump dependency on PHP 8.1 + +* Wed Mar 20 2024 Remi Collet <remi@remirepo.net> - 3.52.1-1 +- update to 3.52.1 + +* Tue Mar 19 2024 Remi Collet <remi@remirepo.net> - 3.52.0-1 +- update to 3.52.0 + +* Thu Feb 29 2024 Remi Collet <remi@remirepo.net> - 3.51.0-1 +- update to 3.51.0 + +* Mon Feb 26 2024 Remi Collet <remi@remirepo.net> - 3.50.0-1 +- update to 3.50.0 + +* Mon Feb 5 2024 Remi Collet <remi@remirepo.net> - 3.49.0-1 +- update to 3.49.0 + +* Mon Jan 22 2024 Remi Collet <remi@remirepo.net> - 3.48.0-1 +- update to 3.48.0 + +* Wed Jan 17 2024 Remi Collet <remi@remirepo.net> - 3.47.1-1 +- update to 3.47.1 + +* Tue Jan 16 2024 Remi Collet <remi@remirepo.net> - 3.47.0-1 +- update to 3.47.0 + +* Thu Jan 4 2024 Remi Collet <remi@remirepo.net> - 3.46.0-1 +- update to 3.46.0 + +* Sat Dec 30 2023 Remi Collet <remi@remirepo.net> - 3.45.0-1 +- update to 3.45.0 + +* Fri Dec 29 2023 Remi Collet <remi@remirepo.net> - 3.43.0-1 +- update to 3.43.0 + +* Wed Dec 27 2023 Remi Collet <remi@remirepo.net> - 3.42.0-1 +- update to 3.42.0 + +* Mon Dec 11 2023 Remi Collet <remi@remirepo.net> - 3.41.1-1 +- update to 3.41.1 + +* Mon Dec 4 2023 Remi Collet <remi@remirepo.net> - 3.40.2-1 +- update to 3.40.2 + +* Mon Nov 27 2023 Remi Collet <remi@remirepo.net> - 3.40.0-1 +- update to 3.40.0 + +* Wed Nov 22 2023 Remi Collet <remi@remirepo.net> - 3.39.0-1 +- update to 3.39.0 + +* Tue Nov 14 2023 Remi Collet <remi@remirepo.net> - 3.38.2-1 +- update to 3.38.2 + +* Tue Nov 7 2023 Remi Collet <remi@remirepo.net> - 3.38.0-1 +- update to 3.38.0 + +* Mon Oct 30 2023 Remi Collet <remi@remirepo.net> - 3.37.1-1 +- update to 3.37.1 + +* Fri Oct 27 2023 Remi Collet <remi@remirepo.net> - 3.36.0-1 +- update to 3.36.0 + +* Fri Oct 13 2023 Remi Collet <remi@remirepo.net> - 3.35.1-1 +- update to 3.35.1 + +* Wed Oct 4 2023 Remi Collet <remi@remirepo.net> - 3.34.1-1 +- update to 3.34.1 + +* Sat Sep 30 2023 Remi Collet <remi@remirepo.net> - 3.34.0-1 +- update to 3.34.0 + +* Fri Sep 29 2023 Remi Collet <remi@remirepo.net> - 3.31.0-1 +- update to 3.31.0 + +* Wed Sep 27 2023 Remi Collet <remi@remirepo.net> - 3.30.0-1 +- update to 3.30.0 + +* Mon Sep 25 2023 Remi Collet <remi@remirepo.net> - 3.28.0-1 +- update to 3.28.0 + +* Mon Sep 18 2023 Remi Collet <remi@remirepo.net> - 3.27.0-1 +- update to 3.27.0 + +* Mon Sep 11 2023 Remi Collet <remi@remirepo.net> - 3.26.1-1 +- update to 3.26.1 + +* Fri Sep 8 2023 Remi Collet <remi@remirepo.net> - 3.26.0-1 +- update to 3.26.0 + +* Mon Sep 4 2023 Remi Collet <remi@remirepo.net> - 3.25.1-1 +- update to 3.25.1 + +* Fri Sep 1 2023 Remi Collet <remi@remirepo.net> - 3.25.0-1 +- update to 3.25.0 + +* Thu Aug 31 2023 Remi Collet <remi@remirepo.net> - 3.24.0-1 +- update to 3.24.0 + +* Fri Aug 18 2023 Remi Collet <remi@remirepo.net> - 3.23.0-1 +- update to 3.23.0 + +* Mon Jul 17 2023 Remi Collet <remi@remirepo.net> - 3.22.0-1 +- update to 3.22.0 + +* Thu Jul 6 2023 Remi Collet <remi@remirepo.net> - 3.21.1-1 +- update to 3.21.1 +- bump dependency on PHP 8.0 + +* Wed Jun 28 2023 Remi Collet <remi@remirepo.net> - 3.20.0-1 +- update to 3.20.0 + +* Mon Jun 26 2023 Remi Collet <remi@remirepo.net> - 3.19.2-1 +- update to 3.19.2 + +* Tue Jun 20 2023 Remi Collet <remi@remirepo.net> - 3.18.0-1 +- update to 3.18.0 + +* Wed May 24 2023 Remi Collet <remi@remirepo.net> - 3.17.0-1 +- update to 3.17.0 + +* Mon Apr 3 2023 Remi Collet <remi@remirepo.net> - 3.16.0-1 +- update to 3.16.0 + +* Tue Mar 14 2023 Remi Collet <remi@remirepo.net> - 3.15.1-1 +- update to 3.15.1 + +* Mon Mar 13 2023 Remi Collet <remi@remirepo.net> - 3.15.0-1 +- update to 3.15.0 + +* Mon Mar 13 2023 Remi Collet <remi@remirepo.net> - 3.14.5-1 +- update to 3.14.5 + +* Fri Feb 10 2023 Remi Collet <remi@remirepo.net> - 3.14.4-1 +- update to 3.14.4 + +* Tue Jan 31 2023 Remi Collet <remi@remirepo.net> - 3.14.3-1 +- update to 3.14.3 + +* Tue Jan 3 2023 Remi Collet <remi@remirepo.net> - 3.13.2-1 +- update to 3.13.2 + +* Mon Dec 19 2022 Remi Collet <remi@remirepo.net> - 3.13.1-1 +- update to 3.13.1 + +* Wed Nov 2 2022 Remi Collet <remi@remirepo.net> - 3.13.0-1 +- update to 3.13.0 + +* Wed Oct 12 2022 Remi Collet <remi@remirepo.net> - 3.12.0-1 +- update to 3.12.0 + +* Thu Sep 8 2022 Remi Collet <remi@remirepo.net> - 3.11.0-1 +- update to 3.11.0 + +* Thu Aug 18 2022 Remi Collet <remi@remirepo.net> - 3.10.0-1 +- update to 3.10.0 + +* Fri Jul 22 2022 Remi Collet <remi@remirepo.net> - 3.9.5-1 +- update to 3.9.5 + +* Mon Jul 18 2022 Remi Collet <remi@remirepo.net> - 3.9.4-1 +- update to 3.9.4 + +* Wed Jul 13 2022 Remi Collet <remi@remirepo.net> - 3.9.3-1 +- update to 3.9.3 + +* Tue Jul 12 2022 Remi Collet <remi@remirepo.net> - 3.9.2-1 +- update to 3.9.2 + +* Mon Jul 11 2022 Remi Collet <remi@remirepo.net> - 3.9.1-1 +- update to 3.9.1 + +* Mon Mar 21 2022 Remi Collet <remi@remirepo.net> - 3.8.0-1 +- update to 3.8.0 + +* Tue Mar 8 2022 Remi Collet <remi@remirepo.net> - 3.7.0-1 +- update to 3.7.0 #StandWithUkraine️ + +* Tue Feb 8 2022 Remi Collet <remi@remirepo.net> - 3.6.0-1 +- update to 3.6.0 + +* Fri Jan 14 2022 Remi Collet <remi@remirepo.net> - 3.5.0-1 +- update to 3.5.0 +- install in /usr/share/php-cs-fixer with all bundled libraries + +* Tue Nov 16 2021 Remi Collet <remi@remirepo.net> - 2.19.3-1 +- update to 2.19.3 + +* Thu Sep 2 2021 Remi Collet <remi@remirepo.net> - 2.19.2-1 +- update to 2.19.2 + +* Tue Aug 3 2021 Remi Collet <remi@remirepo.net> - 2.19.1-1 +- update to 2.19.1 + +* Tue May 4 2021 Remi Collet <remi@remirepo.net> - 2.19.0-1 +- update to 2.19.0 + +* Tue Apr 20 2021 Remi Collet <remi@remirepo.net> - 2.18.6-1 +- update to 2.18.6 +- switch to composer/xdebug-handler version 2 + +* Wed Apr 7 2021 Remi Collet <remi@remirepo.net> - 2.18.5-1 +- update to 2.18.5 + +* Mon Mar 22 2021 Remi Collet <remi@remirepo.net> - 2.18.4-1 +- update to 2.18.4 + +* Thu Mar 11 2021 Remi Collet <remi@remirepo.net> - 2.18.3-1 +- update to 2.18.3 + +* Tue Jan 26 2021 Remi Collet <remi@remirepo.net> - 2.18.2-1 +- update to 2.18.2 + +* Fri Jan 22 2021 Remi Collet <remi@remirepo.net> - 2.18.1-1 +- update to 2.18.1 + +* Mon Jan 18 2021 Remi Collet <remi@remirepo.net> - 2.18.0-1 +- update to 2.18.0 + +* Mon Jan 4 2021 Remi Collet <remi@remirepo.net> - 2.17.3-1 +- update to 2.17.3 + +* Mon Dec 21 2020 Remi Collet <remi@remirepo.net> - 2.17.2-1 +- update to 2.17.2 +- switch to phpunit9 + with phpspec/prophecy-phpunit and sanmai/phpunit-legacy-adapter + +* Wed Dec 9 2020 Remi Collet <remi@remirepo.net> - 2.17.1-1 +- update to 2.17.1 + +* Tue Dec 8 2020 Remi Collet <remi@remirepo.net> - 2.17.0-1 +- update to 2.17.0 + +* Wed Oct 28 2020 Remi Collet <remi@remirepo.net> - 2.16.7-1 +- update to 2.16.7 +- raise dependency on composer/semver v3 + +* Mon Oct 26 2020 Remi Collet <remi@remirepo.net> - 2.16.4-3 +- raise dependency on PHP 7.2 +- drop dependency on symfony-polyfill + +* Mon Jun 29 2020 Remi Collet <remi@remirepo.net> - 2.16.4-1 +- update to 2.16.4 + +* Thu Apr 16 2020 Remi Collet <remi@remirepo.net> - 2.16.3-1 +- update to 2.16.3 + +* Mon Apr 13 2020 Remi Collet <remi@remirepo.net> - 2.16.2-1 +- update to 2.16.2 + +* Tue Nov 26 2019 Remi Collet <remi@remirepo.net> - 2.16.1-1 +- update to 2.16.1 + * Mon Nov 4 2019 Remi Collet <remi@remirepo.net> - 2.16.0-1 - update to 2.16.0 |