diff --git a/.gitignore b/.gitignore index 42cd73d..8edcbd5 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,17 @@ -/vendor/ \ No newline at end of file +# Ignore prefixed build directory +/build/ + +# Composer +/vendor/ +composer.lock + +# IDE files +.idea/ +.vscode/ + +# OS generated files +.DS_Store +Thumbs.db + +# Test files +/test-prefix.php \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..1d06150 --- /dev/null +++ b/README.md @@ -0,0 +1,54 @@ +# Uncanny Automator Developer Tools + +Centralized development tools for Uncanny Owl plugins, with namespaced Codeception to avoid global conflicts. + +## Installation + +```bash +composer require uncanny-owl/developer-tools +``` + +## Using the TestDetection utility + +The TestDetection utility provides an isolated way to detect when code is running in a test environment, without interfering with other plugins that may also use Codeception. + +```php +use UncannyOwl\DevTools\TestDetection; + +if (TestDetection::isTestRunning()) { + // Code that should only run during tests +} +``` + +## How it works + +This package uses PHP-Scoper to prefix all Codeception dependencies with the `UncannyOwl\DevTools\Vendor` namespace. This means: + +1. Your plugin can detect Codeception tests using our namespaced version +2. Other plugins can still use the global Codeception classes without conflicts +3. The detection is isolated and won't interfere with other plugins + +## Release Process + +For maintainers, follow these steps to create a new release: + +1. Make your code changes on a development branch +2. Update version numbers in composer.json if needed +3. Run the prepare-release script with your version number: + +```bash +# Prepare the release +composer run prepare-release +./prepare-release.sh 1.0.0 # Replace with your version + +# Follow the instructions printed by the script to push the release +``` + +The script will: +- Create a release branch +- Build the prefixed version of dependencies +- Include the build directory in the release +- Commit the changes +- Provide instructions for tagging and pushing the release + +Once you push the tag, Packagist will automatically update with the new version. \ No newline at end of file diff --git a/build.php b/build.php new file mode 100644 index 0000000..7ac229c --- /dev/null +++ b/build.php @@ -0,0 +1,110 @@ + 'uncanny-owl/developer-tools', + 'description' => 'Centralized development tools for Uncanny Owl plugins (Prefixed version)', + 'type' => 'library', + 'license' => 'GPL-3.0-or-later', + 'authors' => [ + [ + 'name' => 'Uncanny Automator', + 'email' => 'support@uncannyautomator.com' + ] + ], + 'autoload' => [ + 'psr-4' => [ + 'UncannyOwl\\DevTools\\' => 'src/', + 'UncannyOwl\\DevTools\\Vendor\\Codeception\\' => 'codeception/codeception/', + 'UncannyOwl\\DevTools\\Vendor\\tad\\WPBrowser\\' => 'lucatume/wp-browser/src/' + ] + ], + 'minimum-stability' => 'dev', + 'prefer-stable' => true +]; +file_put_contents('build/composer.json', json_encode($composer_json, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES)); + +// Step 4: Generate autoload files +echo "Generating autoload files...\n"; +exec('composer dump-autoload -d build', $output, $return_var); +if ($return_var !== 0) { + echo "Error generating autoload files\n"; + exit(1); +} + +// Step 5: Create a bootstrap file +echo "Creating bootstrap file...\n"; +$bootstrap_content = <<=7.1" + "ext-json": "*", + "marc-mabe/php-enum": "^4.0", + "php": "^7.2 || ^8.0" }, "require-dev": { - "friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1", + "friendsofphp/php-cs-fixer": "3.3.0", "json-schema/json-schema-test-suite": "1.2.0", - "phpunit/phpunit": "^4.8.35" + "marc-mabe/php-enum-phpstan": "^2.0", + "phpspec/prophecy": "^1.19", + "phpstan/phpstan": "^1.12", + "phpunit/phpunit": "^8.5" }, "bin": [ "bin/validate-json" ], "type": "library", + "extra": { + "branch-alias": { + "dev-master": "6.x-dev" + } + }, "autoload": { "psr-4": { "JsonSchema\\": "src/JsonSchema/" @@ -2747,16 +2756,16 @@ } ], "description": "A library to validate a json schema.", - "homepage": "https://github.com/justinrainbow/json-schema", + "homepage": "https://github.com/jsonrainbow/json-schema", "keywords": [ "json", "schema" ], "support": { "issues": "https://github.com/jsonrainbow/json-schema/issues", - "source": "https://github.com/jsonrainbow/json-schema/tree/5.3.0" + "source": "https://github.com/jsonrainbow/json-schema/tree/6.4.1" }, - "time": "2024-07-06T21:00:26+00:00" + "time": "2025-04-04T13:08:07+00:00" }, { "name": "lucatume/wp-browser", @@ -2869,6 +2878,79 @@ ], "time": "2024-01-08T08:27:20+00:00" }, + { + "name": "marc-mabe/php-enum", + "version": "v4.7.1", + "source": { + "type": "git", + "url": "https://github.com/marc-mabe/php-enum.git", + "reference": "7159809e5cfa041dca28e61f7f7ae58063aae8ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/marc-mabe/php-enum/zipball/7159809e5cfa041dca28e61f7f7ae58063aae8ed", + "reference": "7159809e5cfa041dca28e61f7f7ae58063aae8ed", + "shasum": "" + }, + "require": { + "ext-reflection": "*", + "php": "^7.1 | ^8.0" + }, + "require-dev": { + "phpbench/phpbench": "^0.16.10 || ^1.0.4", + "phpstan/phpstan": "^1.3.1", + "phpunit/phpunit": "^7.5.20 | ^8.5.22 | ^9.5.11", + "vimeo/psalm": "^4.17.0 | ^5.26.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-3.x": "3.2-dev", + "dev-master": "4.7-dev" + } + }, + "autoload": { + "psr-4": { + "MabeEnum\\": "src/" + }, + "classmap": [ + "stubs/Stringable.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Marc Bennewitz", + "email": "dev@mabe.berlin", + "homepage": "https://mabe.berlin/", + "role": "Lead" + } + ], + "description": "Simple and fast implementation of enumerations with native PHP", + "homepage": "https://github.com/marc-mabe/php-enum", + "keywords": [ + "enum", + "enum-map", + "enum-set", + "enumeration", + "enumerator", + "enummap", + "enumset", + "map", + "set", + "type", + "type-hint", + "typehint" + ], + "support": { + "issues": "https://github.com/marc-mabe/php-enum/issues", + "source": "https://github.com/marc-mabe/php-enum/tree/v4.7.1" + }, + "time": "2024-11-28T04:54:44+00:00" + }, { "name": "mck89/peast", "version": "v1.17.0", @@ -3029,68 +3111,18 @@ }, "time": "2021-09-30T13:48:57+00:00" }, - { - "name": "mustache/mustache", - "version": "v2.14.2", - "source": { - "type": "git", - "url": "https://github.com/bobthecow/mustache.php.git", - "reference": "e62b7c3849d22ec55f3ec425507bf7968193a6cb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/bobthecow/mustache.php/zipball/e62b7c3849d22ec55f3ec425507bf7968193a6cb", - "reference": "e62b7c3849d22ec55f3ec425507bf7968193a6cb", - "shasum": "" - }, - "require": { - "php": ">=5.2.4" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "~1.11", - "phpunit/phpunit": "~3.7|~4.0|~5.0" - }, - "type": "library", - "autoload": { - "psr-0": { - "Mustache": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Justin Hileman", - "email": "justin@justinhileman.info", - "homepage": "http://justinhileman.com" - } - ], - "description": "A Mustache implementation in PHP.", - "homepage": "https://github.com/bobthecow/mustache.php", - "keywords": [ - "mustache", - "templating" - ], - "support": { - "issues": "https://github.com/bobthecow/mustache.php/issues", - "source": "https://github.com/bobthecow/mustache.php/tree/v2.14.2" - }, - "time": "2022-08-23T13:07:01+00:00" - }, { "name": "myclabs/deep-copy", - "version": "1.13.0", + "version": "1.13.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "024473a478be9df5fdaca2c793f2232fe788e414" + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/024473a478be9df5fdaca2c793f2232fe788e414", - "reference": "024473a478be9df5fdaca2c793f2232fe788e414", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/1720ddd719e16cf0db4eb1c6eca108031636d46c", + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c", "shasum": "" }, "require": { @@ -3129,7 +3161,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.13.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.1" }, "funding": [ { @@ -3137,7 +3169,7 @@ "type": "tidelift" } ], - "time": "2025-02-12T12:17:51+00:00" + "time": "2025-04-29T12:36:36+00:00" }, { "name": "nb/oxymel", @@ -3293,27 +3325,25 @@ }, { "name": "nikic/php-parser", - "version": "v5.4.0", + "version": "v4.19.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "447a020a1f875a434d62f2a401f53b82a396e494" + "reference": "715f4d25e225bc47b293a8b997fe6ce99bf987d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", - "reference": "447a020a1f875a434d62f2a401f53b82a396e494", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/715f4d25e225bc47b293a8b997fe6ce99bf987d2", + "reference": "715f4d25e225bc47b293a8b997fe6ce99bf987d2", "shasum": "" }, "require": { - "ext-ctype": "*", - "ext-json": "*", "ext-tokenizer": "*", - "php": ">=7.4" + "php": ">=7.1" }, "require-dev": { "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^9.0" + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" }, "bin": [ "bin/php-parse" @@ -3321,7 +3351,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-master": "4.9-dev" } }, "autoload": { @@ -3345,9 +3375,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.4" }, - "time": "2024-12-30T11:07:19+00:00" + "time": "2024-09-29T15:01:53+00:00" }, { "name": "phar-io/manifest", @@ -3739,22 +3769,22 @@ }, { "name": "phpcsstandards/phpcsextra", - "version": "1.2.1", + "version": "1.3.0", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSExtra.git", - "reference": "11d387c6642b6e4acaf0bd9bf5203b8cca1ec489" + "reference": "46d08eb86eec622b96c466adec3063adfed280dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/11d387c6642b6e4acaf0bd9bf5203b8cca1ec489", - "reference": "11d387c6642b6e4acaf0bd9bf5203b8cca1ec489", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/46d08eb86eec622b96c466adec3063adfed280dd", + "reference": "46d08eb86eec622b96c466adec3063adfed280dd", "shasum": "" }, "require": { "php": ">=5.4", "phpcsstandards/phpcsutils": "^1.0.9", - "squizlabs/php_codesniffer": "^3.8.0" + "squizlabs/php_codesniffer": "^3.12.1" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0", @@ -3811,9 +3841,13 @@ { "url": "https://opencollective.com/php_codesniffer", "type": "open_collective" + }, + { + "url": "https://thanks.dev/u/gh/phpcsstandards", + "type": "thanks_dev" } ], - "time": "2023-12-08T16:49:07+00:00" + "time": "2025-04-20T23:35:32+00:00" }, { "name": "phpcsstandards/phpcsutils", @@ -4299,16 +4333,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.22", + "version": "9.6.23", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "f80235cb4d3caa59ae09be3adf1ded27521d1a9c" + "reference": "43d2cb18d0675c38bd44982a5d1d88f6d53d8d95" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f80235cb4d3caa59ae09be3adf1ded27521d1a9c", - "reference": "f80235cb4d3caa59ae09be3adf1ded27521d1a9c", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/43d2cb18d0675c38bd44982a5d1d88f6d53d8d95", + "reference": "43d2cb18d0675c38bd44982a5d1d88f6d53d8d95", "shasum": "" }, "require": { @@ -4319,7 +4353,7 @@ "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.12.1", + "myclabs/deep-copy": "^1.13.1", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", @@ -4382,7 +4416,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.22" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.23" }, "funding": [ { @@ -4393,12 +4427,20 @@ "url": "https://github.com/sebastianbergmann", "type": "github" }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, { "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", "type": "tidelift" } ], - "time": "2024-12-05T13:48:26+00:00" + "time": "2025-05-02T06:40:34+00:00" }, { "name": "psr/clock", @@ -6067,16 +6109,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.12.0", + "version": "3.12.2", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "2d1b63db139c3c6ea0c927698e5160f8b3b8d630" + "reference": "6d4cf6032d4b718f168c90a96e36c7d0eaacb2aa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/2d1b63db139c3c6ea0c927698e5160f8b3b8d630", - "reference": "2d1b63db139c3c6ea0c927698e5160f8b3b8d630", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/6d4cf6032d4b718f168c90a96e36c7d0eaacb2aa", + "reference": "6d4cf6032d4b718f168c90a96e36c7d0eaacb2aa", "shasum": "" }, "require": { @@ -6147,7 +6189,7 @@ "type": "thanks_dev" } ], - "time": "2025-03-18T05:04:51+00:00" + "time": "2025-04-13T04:10:18+00:00" }, { "name": "symfony/browser-kit", @@ -6820,7 +6862,7 @@ }, { "name": "symfony/polyfill-ctype", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", @@ -6879,7 +6921,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.32.0" }, "funding": [ { @@ -6899,7 +6941,7 @@ }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", @@ -6957,7 +6999,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.32.0" }, "funding": [ { @@ -6977,7 +7019,7 @@ }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", @@ -7038,7 +7080,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.32.0" }, "funding": [ { @@ -7058,19 +7100,20 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", - "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", "shasum": "" }, "require": { + "ext-iconv": "*", "php": ">=7.2" }, "provide": { @@ -7118,7 +7161,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.32.0" }, "funding": [ { @@ -7134,11 +7177,11 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-12-23T08:48:59+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", @@ -7194,7 +7237,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.32.0" }, "funding": [ { @@ -7214,16 +7257,16 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608", + "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608", "shasum": "" }, "require": { @@ -7274,7 +7317,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.32.0" }, "funding": [ { @@ -7290,11 +7333,11 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2025-01-02T08:10:11+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", @@ -7350,7 +7393,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.32.0" }, "funding": [ { @@ -7600,16 +7643,16 @@ }, { "name": "symfony/translation", - "version": "v6.4.19", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "3b9bf9f33997c064885a7bfc126c14b9daa0e00e" + "reference": "bb92ea5588396b319ba43283a5a3087a034cb29c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/3b9bf9f33997c064885a7bfc126c14b9daa0e00e", - "reference": "3b9bf9f33997c064885a7bfc126c14b9daa0e00e", + "url": "https://api.github.com/repos/symfony/translation/zipball/bb92ea5588396b319ba43283a5a3087a034cb29c", + "reference": "bb92ea5588396b319ba43283a5a3087a034cb29c", "shasum": "" }, "require": { @@ -7675,7 +7718,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.19" + "source": "https://github.com/symfony/translation/tree/v6.4.21" }, "funding": [ { @@ -7691,7 +7734,7 @@ "type": "tidelift" } ], - "time": "2025-02-13T10:18:43+00:00" + "time": "2025-04-07T19:02:30+00:00" }, { "name": "symfony/translation-contracts", @@ -7902,12 +7945,12 @@ "source": { "type": "git", "url": "https://github.com/UncannyOwl/Uncanny-Owl-Coding-Standards.git", - "reference": "717e4c3691b7a950f6e7791a6753da9c52a65010" + "reference": "1a1d8ceec885221c9873827552a8926e55e07dbb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/UncannyOwl/Uncanny-Owl-Coding-Standards/zipball/717e4c3691b7a950f6e7791a6753da9c52a65010", - "reference": "717e4c3691b7a950f6e7791a6753da9c52a65010", + "url": "https://api.github.com/repos/UncannyOwl/Uncanny-Owl-Coding-Standards/zipball/1a1d8ceec885221c9873827552a8926e55e07dbb", + "reference": "1a1d8ceec885221c9873827552a8926e55e07dbb", "shasum": "" }, "require": { @@ -7974,20 +8017,20 @@ "issues": "https://github.com/UncannyOwl/UOCS/issues", "source": "https://github.com/UncannyOwl/UOCS" }, - "time": "2025-04-01T14:39:11+00:00" + "time": "2025-04-10T00:36:35+00:00" }, { "name": "vlucas/phpdotenv", - "version": "v5.6.1", + "version": "v5.6.2", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2" + "reference": "24ac4c74f91ee2c193fa1aaa5c249cb0822809af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2", - "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/24ac4c74f91ee2c193fa1aaa5c249cb0822809af", + "reference": "24ac4c74f91ee2c193fa1aaa5c249cb0822809af", "shasum": "" }, "require": { @@ -8046,7 +8089,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.2" }, "funding": [ { @@ -8058,7 +8101,7 @@ "type": "tidelift" } ], - "time": "2024-07-20T21:52:34+00:00" + "time": "2025-04-30T23:37:27+00:00" }, { "name": "voku/portable-ascii", @@ -8189,20 +8232,20 @@ }, { "name": "wp-cli/cache-command", - "version": "v2.1.3", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/wp-cli/cache-command.git", - "reference": "1dbb59e5ed126b9a2fa9d521d29910f3f4eb0f97" + "reference": "14f76b0bc8f9fa0a680e9c70e18fcf627774d055" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/cache-command/zipball/1dbb59e5ed126b9a2fa9d521d29910f3f4eb0f97", - "reference": "1dbb59e5ed126b9a2fa9d521d29910f3f4eb0f97", + "url": "https://api.github.com/repos/wp-cli/cache-command/zipball/14f76b0bc8f9fa0a680e9c70e18fcf627774d055", + "reference": "14f76b0bc8f9fa0a680e9c70e18fcf627774d055", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -8220,6 +8263,8 @@ "cache flush-group", "cache get", "cache incr", + "cache patch", + "cache pluck", "cache replace", "cache set", "cache supports", @@ -8227,9 +8272,11 @@ "transient", "transient delete", "transient get", + "transient list", + "transient patch", + "transient pluck", "transient set", - "transient type", - "transient list" + "transient type" ], "branch-alias": { "dev-main": "2.x-dev" @@ -8258,26 +8305,26 @@ "homepage": "https://github.com/wp-cli/cache-command", "support": { "issues": "https://github.com/wp-cli/cache-command/issues", - "source": "https://github.com/wp-cli/cache-command/tree/v2.1.3" + "source": "https://github.com/wp-cli/cache-command/tree/v2.2.0" }, - "time": "2024-04-26T14:54:22+00:00" + "time": "2025-05-06T01:43:20+00:00" }, { "name": "wp-cli/checksum-command", - "version": "v2.3.0", + "version": "v2.3.1", "source": { "type": "git", "url": "https://github.com/wp-cli/checksum-command.git", - "reference": "bc82cfb0b1e24eec99cd1bfa515a62c63bd46936" + "reference": "39992dbd66835f8d5c2cc5bfeacf9d2c450cbafe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/checksum-command/zipball/bc82cfb0b1e24eec99cd1bfa515a62c63bd46936", - "reference": "bc82cfb0b1e24eec99cd1bfa515a62c63bd46936", + "url": "https://api.github.com/repos/wp-cli/checksum-command/zipball/39992dbd66835f8d5c2cc5bfeacf9d2c450cbafe", + "reference": "39992dbd66835f8d5c2cc5bfeacf9d2c450cbafe", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/extension-command": "^1.2 || ^2", @@ -8317,26 +8364,26 @@ "homepage": "https://github.com/wp-cli/checksum-command", "support": { "issues": "https://github.com/wp-cli/checksum-command/issues", - "source": "https://github.com/wp-cli/checksum-command/tree/v2.3.0" + "source": "https://github.com/wp-cli/checksum-command/tree/v2.3.1" }, - "time": "2024-10-01T21:53:46+00:00" + "time": "2025-04-10T11:02:20+00:00" }, { "name": "wp-cli/config-command", - "version": "v2.3.7", + "version": "v2.3.8", "source": { "type": "git", "url": "https://github.com/wp-cli/config-command.git", - "reference": "effb7898bc6ffdaf8a0666432f3c8e35b715858e" + "reference": "994b3dc9e8284fc978366920d5c5ae0dde3a004e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/config-command/zipball/effb7898bc6ffdaf8a0666432f3c8e35b715858e", - "reference": "effb7898bc6ffdaf8a0666432f3c8e35b715858e", + "url": "https://api.github.com/repos/wp-cli/config-command/zipball/994b3dc9e8284fc978366920d5c5ae0dde3a004e", + "reference": "994b3dc9e8284fc978366920d5c5ae0dde3a004e", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5", + "wp-cli/wp-cli": "^2.12", "wp-cli/wp-config-transformer": "^1.4.0" }, "require-dev": { @@ -8391,27 +8438,27 @@ "homepage": "https://github.com/wp-cli/config-command", "support": { "issues": "https://github.com/wp-cli/config-command/issues", - "source": "https://github.com/wp-cli/config-command/tree/v2.3.7" + "source": "https://github.com/wp-cli/config-command/tree/v2.3.8" }, - "time": "2024-10-01T10:19:18+00:00" + "time": "2025-04-11T09:37:43+00:00" }, { "name": "wp-cli/core-command", - "version": "v2.1.18", + "version": "v2.1.20", "source": { "type": "git", "url": "https://github.com/wp-cli/core-command.git", - "reference": "f7580f93fe66a5584fa7b7c42bd2c0c1435c9d2e" + "reference": "83e4692784a815bb7f5df10b72204f237b5224b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/core-command/zipball/f7580f93fe66a5584fa7b7c42bd2c0c1435c9d2e", - "reference": "f7580f93fe66a5584fa7b7c42bd2c0c1435c9d2e", + "url": "https://api.github.com/repos/wp-cli/core-command/zipball/83e4692784a815bb7f5df10b72204f237b5224b9", + "reference": "83e4692784a815bb7f5df10b72204f237b5224b9", "shasum": "" }, "require": { "composer/semver": "^1.4 || ^2 || ^3", - "wp-cli/wp-cli": "^2.5.1" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/checksum-command": "^1 || ^2", @@ -8462,26 +8509,26 @@ "homepage": "https://github.com/wp-cli/core-command", "support": { "issues": "https://github.com/wp-cli/core-command/issues", - "source": "https://github.com/wp-cli/core-command/tree/v2.1.18" + "source": "https://github.com/wp-cli/core-command/tree/v2.1.20" }, - "time": "2024-04-12T09:36:36+00:00" + "time": "2025-04-16T11:23:00+00:00" }, { "name": "wp-cli/cron-command", - "version": "v2.3.1", + "version": "v2.3.2", "source": { "type": "git", "url": "https://github.com/wp-cli/cron-command.git", - "reference": "46f849f2f0ba859c6acd356eefc76769c8381ae5" + "reference": "6f450028a75ebd275f12cad62959a0709bf3e7c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/cron-command/zipball/46f849f2f0ba859c6acd356eefc76769c8381ae5", - "reference": "46f849f2f0ba859c6acd356eefc76769c8381ae5", + "url": "https://api.github.com/repos/wp-cli/cron-command/zipball/6f450028a75ebd275f12cad62959a0709bf3e7c1", + "reference": "6f450028a75ebd275f12cad62959a0709bf3e7c1", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -8531,26 +8578,26 @@ "homepage": "https://github.com/wp-cli/cron-command", "support": { "issues": "https://github.com/wp-cli/cron-command/issues", - "source": "https://github.com/wp-cli/cron-command/tree/v2.3.1" + "source": "https://github.com/wp-cli/cron-command/tree/v2.3.2" }, - "time": "2024-10-01T10:30:28+00:00" + "time": "2025-04-02T11:55:20+00:00" }, { "name": "wp-cli/db-command", - "version": "v2.1.2", + "version": "v2.1.3", "source": { "type": "git", "url": "https://github.com/wp-cli/db-command.git", - "reference": "d4c0dd25ec8b3d0118a2400cf6b87e8d08b77c43" + "reference": "f857c91454d7092fa672bc388512a51752d9264a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/db-command/zipball/d4c0dd25ec8b3d0118a2400cf6b87e8d08b77c43", - "reference": "d4c0dd25ec8b3d0118a2400cf6b87e8d08b77c43", + "url": "https://api.github.com/repos/wp-cli/db-command/zipball/f857c91454d7092fa672bc388512a51752d9264a", + "reference": "f857c91454d7092fa672bc388512a51752d9264a", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -8605,26 +8652,26 @@ "homepage": "https://github.com/wp-cli/db-command", "support": { "issues": "https://github.com/wp-cli/db-command/issues", - "source": "https://github.com/wp-cli/db-command/tree/v2.1.2" + "source": "https://github.com/wp-cli/db-command/tree/v2.1.3" }, - "time": "2024-10-01T10:48:48+00:00" + "time": "2025-04-10T11:02:04+00:00" }, { "name": "wp-cli/embed-command", - "version": "v2.0.17", + "version": "v2.0.18", "source": { "type": "git", "url": "https://github.com/wp-cli/embed-command.git", - "reference": "ece56cafcb8ef0a05dac9e41b5ab852ecd57b02c" + "reference": "52f59a1dacf1d4a1c68fd685f27909e1f493816b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/embed-command/zipball/ece56cafcb8ef0a05dac9e41b5ab852ecd57b02c", - "reference": "ece56cafcb8ef0a05dac9e41b5ab852ecd57b02c", + "url": "https://api.github.com/repos/wp-cli/embed-command/zipball/52f59a1dacf1d4a1c68fd685f27909e1f493816b", + "reference": "52f59a1dacf1d4a1c68fd685f27909e1f493816b", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -8672,26 +8719,26 @@ "homepage": "https://github.com/wp-cli/embed-command", "support": { "issues": "https://github.com/wp-cli/embed-command/issues", - "source": "https://github.com/wp-cli/embed-command/tree/v2.0.17" + "source": "https://github.com/wp-cli/embed-command/tree/v2.0.18" }, - "time": "2024-10-01T10:30:42+00:00" + "time": "2025-04-10T11:01:32+00:00" }, { "name": "wp-cli/entity-command", - "version": "v2.8.2", + "version": "v2.8.4", "source": { "type": "git", "url": "https://github.com/wp-cli/entity-command.git", - "reference": "9dad0753ecba347d5fbdb6b80d01e38768bca4ea" + "reference": "213611f8ab619ca137d983e9b987f7fbf1ac21d4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/entity-command/zipball/9dad0753ecba347d5fbdb6b80d01e38768bca4ea", - "reference": "9dad0753ecba347d5fbdb6b80d01e38768bca4ea", + "url": "https://api.github.com/repos/wp-cli/entity-command/zipball/213611f8ab619ca137d983e9b987f7fbf1ac21d4", + "reference": "213611f8ab619ca137d983e9b987f7fbf1ac21d4", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.11" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/cache-command": "^1 || ^2", @@ -8909,26 +8956,26 @@ "homepage": "https://github.com/wp-cli/entity-command", "support": { "issues": "https://github.com/wp-cli/entity-command/issues", - "source": "https://github.com/wp-cli/entity-command/tree/v2.8.2" + "source": "https://github.com/wp-cli/entity-command/tree/v2.8.4" }, - "time": "2024-10-01T10:44:33+00:00" + "time": "2025-05-06T16:12:49+00:00" }, { "name": "wp-cli/eval-command", - "version": "v2.2.5", + "version": "v2.2.6", "source": { "type": "git", "url": "https://github.com/wp-cli/eval-command.git", - "reference": "1fd2dc9ae74f5fcde7a9b861a1073d6f19952b74" + "reference": "20ec428a7b9bc604fab0bd33ee8fa20662650455" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/eval-command/zipball/1fd2dc9ae74f5fcde7a9b861a1073d6f19952b74", - "reference": "1fd2dc9ae74f5fcde7a9b861a1073d6f19952b74", + "url": "https://api.github.com/repos/wp-cli/eval-command/zipball/20ec428a7b9bc604fab0bd33ee8fa20662650455", + "reference": "20ec428a7b9bc604fab0bd33ee8fa20662650455", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/wp-cli-tests": "^4" @@ -8967,27 +9014,27 @@ "homepage": "https://github.com/wp-cli/eval-command", "support": { "issues": "https://github.com/wp-cli/eval-command/issues", - "source": "https://github.com/wp-cli/eval-command/tree/v2.2.5" + "source": "https://github.com/wp-cli/eval-command/tree/v2.2.6" }, - "time": "2024-10-01T10:30:51+00:00" + "time": "2024-11-24T17:28:06+00:00" }, { "name": "wp-cli/export-command", - "version": "v2.1.13", + "version": "v2.1.14", "source": { "type": "git", "url": "https://github.com/wp-cli/export-command.git", - "reference": "eeafa03095b80d2648d1a67b00c688be9d418aff" + "reference": "2af32bf12c1bccd6561a215dbbafc2f272647ee8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/export-command/zipball/eeafa03095b80d2648d1a67b00c688be9d418aff", - "reference": "eeafa03095b80d2648d1a67b00c688be9d418aff", + "url": "https://api.github.com/repos/wp-cli/export-command/zipball/2af32bf12c1bccd6561a215dbbafc2f272647ee8", + "reference": "2af32bf12c1bccd6561a215dbbafc2f272647ee8", "shasum": "" }, "require": { "nb/oxymel": "~0.1.0", - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/db-command": "^1.3 || ^2", @@ -9030,34 +9077,34 @@ "homepage": "https://github.com/wp-cli/export-command", "support": { "issues": "https://github.com/wp-cli/export-command/issues", - "source": "https://github.com/wp-cli/export-command/tree/v2.1.13" + "source": "https://github.com/wp-cli/export-command/tree/v2.1.14" }, - "time": "2024-10-01T10:31:03+00:00" + "time": "2025-04-02T15:29:08+00:00" }, { "name": "wp-cli/extension-command", - "version": "v2.1.23", + "version": "v2.1.24", "source": { "type": "git", "url": "https://github.com/wp-cli/extension-command.git", - "reference": "c307a11e7ea078cfd52177eefeef9906aa69edcd" + "reference": "d21a2f504ac43a86b6b08697669b5b0844748133" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/extension-command/zipball/c307a11e7ea078cfd52177eefeef9906aa69edcd", - "reference": "c307a11e7ea078cfd52177eefeef9906aa69edcd", + "url": "https://api.github.com/repos/wp-cli/extension-command/zipball/d21a2f504ac43a86b6b08697669b5b0844748133", + "reference": "d21a2f504ac43a86b6b08697669b5b0844748133", "shasum": "" }, "require": { "composer/semver": "^1.4 || ^2 || ^3", - "wp-cli/wp-cli": "^2.10" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/cache-command": "^2.0", "wp-cli/entity-command": "^1.3 || ^2", "wp-cli/language-command": "^2.0", "wp-cli/scaffold-command": "^1.2 || ^2", - "wp-cli/wp-cli-tests": "^4" + "wp-cli/wp-cli-tests": "^4.3.7" }, "type": "wp-cli-package", "extra": { @@ -9128,33 +9175,33 @@ "homepage": "https://github.com/wp-cli/extension-command", "support": { "issues": "https://github.com/wp-cli/extension-command/issues", - "source": "https://github.com/wp-cli/extension-command/tree/v2.1.23" + "source": "https://github.com/wp-cli/extension-command/tree/v2.1.24" }, - "time": "2024-10-01T10:44:18+00:00" + "time": "2025-05-06T19:17:53+00:00" }, { "name": "wp-cli/i18n-command", - "version": "v2.6.3", + "version": "v2.6.5", "source": { "type": "git", "url": "https://github.com/wp-cli/i18n-command.git", - "reference": "065bb3758fcbff922f1b7a01ab702aab0da79803" + "reference": "5e73d417398993625331a9f69f6c2ef60f234070" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/i18n-command/zipball/065bb3758fcbff922f1b7a01ab702aab0da79803", - "reference": "065bb3758fcbff922f1b7a01ab702aab0da79803", + "url": "https://api.github.com/repos/wp-cli/i18n-command/zipball/5e73d417398993625331a9f69f6c2ef60f234070", + "reference": "5e73d417398993625331a9f69f6c2ef60f234070", "shasum": "" }, "require": { "eftec/bladeone": "3.52", "gettext/gettext": "^4.8", "mck89/peast": "^1.13.11", - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/scaffold-command": "^1.2 || ^2", - "wp-cli/wp-cli-tests": "^4" + "wp-cli/wp-cli-tests": "^4.3.9" }, "suggest": { "ext-json": "Used for reading and generating JSON translation files", @@ -9197,26 +9244,26 @@ "homepage": "https://github.com/wp-cli/i18n-command", "support": { "issues": "https://github.com/wp-cli/i18n-command/issues", - "source": "https://github.com/wp-cli/i18n-command/tree/v2.6.3" + "source": "https://github.com/wp-cli/i18n-command/tree/v2.6.5" }, - "time": "2024-10-01T11:16:25+00:00" + "time": "2025-04-25T21:49:29+00:00" }, { "name": "wp-cli/import-command", - "version": "v2.0.13", + "version": "v2.0.14", "source": { "type": "git", "url": "https://github.com/wp-cli/import-command.git", - "reference": "22f32451046c1d8e7963ff96d95942af14fbb4e9" + "reference": "b2c48f3e51683e825738df62bf8ccc7004c5f0f9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/import-command/zipball/22f32451046c1d8e7963ff96d95942af14fbb4e9", - "reference": "22f32451046c1d8e7963ff96d95942af14fbb4e9", + "url": "https://api.github.com/repos/wp-cli/import-command/zipball/b2c48f3e51683e825738df62bf8ccc7004c5f0f9", + "reference": "b2c48f3e51683e825738df62bf8ccc7004c5f0f9", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -9257,26 +9304,26 @@ "homepage": "https://github.com/wp-cli/import-command", "support": { "issues": "https://github.com/wp-cli/import-command/issues", - "source": "https://github.com/wp-cli/import-command/tree/v2.0.13" + "source": "https://github.com/wp-cli/import-command/tree/v2.0.14" }, - "time": "2024-10-01T10:44:58+00:00" + "time": "2025-04-02T16:47:25+00:00" }, { "name": "wp-cli/language-command", - "version": "v2.0.22", + "version": "v2.0.23", "source": { "type": "git", "url": "https://github.com/wp-cli/language-command.git", - "reference": "27db28eca5f7627c7fbd8da82c6c51eb05e7858e" + "reference": "7221cc39d2b14fd39e55aa7884889f26eec2f822" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/language-command/zipball/27db28eca5f7627c7fbd8da82c6c51eb05e7858e", - "reference": "27db28eca5f7627c7fbd8da82c6c51eb05e7858e", + "url": "https://api.github.com/repos/wp-cli/language-command/zipball/7221cc39d2b14fd39e55aa7884889f26eec2f822", + "reference": "7221cc39d2b14fd39e55aa7884889f26eec2f822", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/db-command": "^1.3 || ^2", @@ -9337,26 +9384,26 @@ "homepage": "https://github.com/wp-cli/language-command", "support": { "issues": "https://github.com/wp-cli/language-command/issues", - "source": "https://github.com/wp-cli/language-command/tree/v2.0.22" + "source": "https://github.com/wp-cli/language-command/tree/v2.0.23" }, - "time": "2024-10-01T10:45:06+00:00" + "time": "2025-04-10T11:09:04+00:00" }, { "name": "wp-cli/maintenance-mode-command", - "version": "v2.1.2", + "version": "v2.1.3", "source": { "type": "git", "url": "https://github.com/wp-cli/maintenance-mode-command.git", - "reference": "d560d7f42fb21e1fc182d69e0cdf06c69891791d" + "reference": "b947e094e00b7b68c6376ec9bd03303515864062" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/maintenance-mode-command/zipball/d560d7f42fb21e1fc182d69e0cdf06c69891791d", - "reference": "d560d7f42fb21e1fc182d69e0cdf06c69891791d", + "url": "https://api.github.com/repos/wp-cli/maintenance-mode-command/zipball/b947e094e00b7b68c6376ec9bd03303515864062", + "reference": "b947e094e00b7b68c6376ec9bd03303515864062", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/wp-cli-tests": "^4" @@ -9398,26 +9445,26 @@ "homepage": "https://github.com/wp-cli/maintenance-mode-command", "support": { "issues": "https://github.com/wp-cli/maintenance-mode-command/issues", - "source": "https://github.com/wp-cli/maintenance-mode-command/tree/v2.1.2" + "source": "https://github.com/wp-cli/maintenance-mode-command/tree/v2.1.3" }, - "time": "2024-10-01T10:45:18+00:00" + "time": "2024-11-24T17:26:30+00:00" }, { "name": "wp-cli/media-command", - "version": "v2.2.1", + "version": "v2.2.2", "source": { "type": "git", "url": "https://github.com/wp-cli/media-command.git", - "reference": "5e2d34d7d01c87d1f50b4838512b3501f5ca6f9a" + "reference": "a810ea0e68473fce6a234e67c6c5f19bb820a753" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/media-command/zipball/5e2d34d7d01c87d1f50b4838512b3501f5ca6f9a", - "reference": "5e2d34d7d01c87d1f50b4838512b3501f5ca6f9a", + "url": "https://api.github.com/repos/wp-cli/media-command/zipball/a810ea0e68473fce6a234e67c6c5f19bb820a753", + "reference": "a810ea0e68473fce6a234e67c6c5f19bb820a753", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -9460,9 +9507,61 @@ "homepage": "https://github.com/wp-cli/media-command", "support": { "issues": "https://github.com/wp-cli/media-command/issues", - "source": "https://github.com/wp-cli/media-command/tree/v2.2.1" + "source": "https://github.com/wp-cli/media-command/tree/v2.2.2" + }, + "time": "2025-04-11T09:28:29+00:00" + }, + { + "name": "wp-cli/mustache", + "version": "v2.14.99", + "source": { + "type": "git", + "url": "https://github.com/wp-cli/mustache.php.git", + "reference": "ca23b97ac35fbe01c160549eb634396183d04a59" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wp-cli/mustache.php/zipball/ca23b97ac35fbe01c160549eb634396183d04a59", + "reference": "ca23b97ac35fbe01c160549eb634396183d04a59", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "replace": { + "mustache/mustache": "^2.14.2" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "~2.19.3", + "yoast/phpunit-polyfills": "^2.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "Mustache": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Justin Hileman", + "email": "justin@justinhileman.info", + "homepage": "http://justinhileman.com" + } + ], + "description": "A Mustache implementation in PHP.", + "homepage": "https://github.com/bobthecow/mustache.php", + "keywords": [ + "mustache", + "templating" + ], + "support": { + "source": "https://github.com/wp-cli/mustache.php/tree/v2.14.99" }, - "time": "2024-10-01T10:45:30+00:00" + "time": "2025-05-06T16:15:37+00:00" }, { "name": "wp-cli/mustangostang-spyc", @@ -9517,22 +9616,22 @@ }, { "name": "wp-cli/package-command", - "version": "v2.5.3", + "version": "v2.6.0", "source": { "type": "git", "url": "https://github.com/wp-cli/package-command.git", - "reference": "9dc4084c66547049ab863e293f427f8c0d099b18" + "reference": "682d8c6bb30c782c3b09c015478c7cbe1cc727a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/package-command/zipball/9dc4084c66547049ab863e293f427f8c0d099b18", - "reference": "9dc4084c66547049ab863e293f427f8c0d099b18", + "url": "https://api.github.com/repos/wp-cli/package-command/zipball/682d8c6bb30c782c3b09c015478c7cbe1cc727a9", + "reference": "682d8c6bb30c782c3b09c015478c7cbe1cc727a9", "shasum": "" }, "require": { - "composer/composer": "^1.10.23 || ^2.2.17", + "composer/composer": "^2.2.25", "ext-json": "*", - "wp-cli/wp-cli": "^2.8" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/scaffold-command": "^1 || ^2", @@ -9576,26 +9675,26 @@ "homepage": "https://github.com/wp-cli/package-command", "support": { "issues": "https://github.com/wp-cli/package-command/issues", - "source": "https://github.com/wp-cli/package-command/tree/v2.5.3" + "source": "https://github.com/wp-cli/package-command/tree/v2.6.0" }, - "time": "2024-10-01T11:13:44+00:00" + "time": "2025-04-11T09:28:45+00:00" }, { "name": "wp-cli/php-cli-tools", - "version": "v0.11.22", + "version": "v0.12.5", "source": { "type": "git", "url": "https://github.com/wp-cli/php-cli-tools.git", - "reference": "a6bb94664ca36d0962f9c2ff25591c315a550c51" + "reference": "34b83b4f700df8a4ec3fd17bf7e7e7d8ca5f28da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/php-cli-tools/zipball/a6bb94664ca36d0962f9c2ff25591c315a550c51", - "reference": "a6bb94664ca36d0962f9c2ff25591c315a550c51", + "url": "https://api.github.com/repos/wp-cli/php-cli-tools/zipball/34b83b4f700df8a4ec3fd17bf7e7e7d8ca5f28da", + "reference": "34b83b4f700df8a4ec3fd17bf7e7e7d8ca5f28da", "shasum": "" }, "require": { - "php": ">= 5.3.0" + "php": ">= 5.6.0" }, "require-dev": { "roave/security-advisories": "dev-latest", @@ -9639,26 +9738,26 @@ ], "support": { "issues": "https://github.com/wp-cli/php-cli-tools/issues", - "source": "https://github.com/wp-cli/php-cli-tools/tree/v0.11.22" + "source": "https://github.com/wp-cli/php-cli-tools/tree/v0.12.5" }, - "time": "2023-12-03T19:25:05+00:00" + "time": "2025-03-26T16:13:46+00:00" }, { "name": "wp-cli/rewrite-command", - "version": "v2.0.14", + "version": "v2.0.15", "source": { "type": "git", "url": "https://github.com/wp-cli/rewrite-command.git", - "reference": "0dd0d11918eaaf2fcad5bc13646ecf266ffa83e9" + "reference": "277ec689b7c268680ff429f52558508622c9b34c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/rewrite-command/zipball/0dd0d11918eaaf2fcad5bc13646ecf266ffa83e9", - "reference": "0dd0d11918eaaf2fcad5bc13646ecf266ffa83e9", + "url": "https://api.github.com/repos/wp-cli/rewrite-command/zipball/277ec689b7c268680ff429f52558508622c9b34c", + "reference": "277ec689b7c268680ff429f52558508622c9b34c", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -9700,26 +9799,26 @@ "homepage": "https://github.com/wp-cli/rewrite-command", "support": { "issues": "https://github.com/wp-cli/rewrite-command/issues", - "source": "https://github.com/wp-cli/rewrite-command/tree/v2.0.14" + "source": "https://github.com/wp-cli/rewrite-command/tree/v2.0.15" }, - "time": "2024-10-01T10:45:45+00:00" + "time": "2025-04-02T12:09:09+00:00" }, { "name": "wp-cli/role-command", - "version": "v2.0.15", + "version": "v2.0.16", "source": { "type": "git", "url": "https://github.com/wp-cli/role-command.git", - "reference": "f92efbf92a0bb4b34e1de9523d9cbd393d406ba2" + "reference": "ed57fb5436b4d47954b07e56c734d19deb4fc491" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/role-command/zipball/f92efbf92a0bb4b34e1de9523d9cbd393d406ba2", - "reference": "f92efbf92a0bb4b34e1de9523d9cbd393d406ba2", + "url": "https://api.github.com/repos/wp-cli/role-command/zipball/ed57fb5436b4d47954b07e56c734d19deb4fc491", + "reference": "ed57fb5436b4d47954b07e56c734d19deb4fc491", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/wp-cli-tests": "^4" @@ -9766,26 +9865,26 @@ "homepage": "https://github.com/wp-cli/role-command", "support": { "issues": "https://github.com/wp-cli/role-command/issues", - "source": "https://github.com/wp-cli/role-command/tree/v2.0.15" + "source": "https://github.com/wp-cli/role-command/tree/v2.0.16" }, - "time": "2024-10-01T10:46:02+00:00" + "time": "2025-04-02T12:24:15+00:00" }, { "name": "wp-cli/scaffold-command", - "version": "v2.4.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/wp-cli/scaffold-command.git", - "reference": "d67d8348f653d00438535ec4389ab9259ef6fb8f" + "reference": "b4238ea12e768b3f15d10339a53a8642f82e1d2b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/scaffold-command/zipball/d67d8348f653d00438535ec4389ab9259ef6fb8f", - "reference": "d67d8348f653d00438535ec4389ab9259ef6fb8f", + "url": "https://api.github.com/repos/wp-cli/scaffold-command/zipball/b4238ea12e768b3f15d10339a53a8642f82e1d2b", + "reference": "b4238ea12e768b3f15d10339a53a8642f82e1d2b", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/extension-command": "^1.2 || ^2", @@ -9832,26 +9931,26 @@ "homepage": "https://github.com/wp-cli/scaffold-command", "support": { "issues": "https://github.com/wp-cli/scaffold-command/issues", - "source": "https://github.com/wp-cli/scaffold-command/tree/v2.4.0" + "source": "https://github.com/wp-cli/scaffold-command/tree/v2.5.0" }, - "time": "2024-10-01T11:13:37+00:00" + "time": "2025-04-11T09:29:34+00:00" }, { "name": "wp-cli/search-replace-command", - "version": "v2.1.7", + "version": "v2.1.8", "source": { "type": "git", "url": "https://github.com/wp-cli/search-replace-command.git", - "reference": "89e1653c9b888179a121a8354c75fc5e8ca7931d" + "reference": "65397a7bfdd5ba2cff26f3ab03ef0bcb916c0057" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/search-replace-command/zipball/89e1653c9b888179a121a8354c75fc5e8ca7931d", - "reference": "89e1653c9b888179a121a8354c75fc5e8ca7931d", + "url": "https://api.github.com/repos/wp-cli/search-replace-command/zipball/65397a7bfdd5ba2cff26f3ab03ef0bcb916c0057", + "reference": "65397a7bfdd5ba2cff26f3ab03ef0bcb916c0057", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/db-command": "^1.3 || ^2", @@ -9892,26 +9991,26 @@ "homepage": "https://github.com/wp-cli/search-replace-command", "support": { "issues": "https://github.com/wp-cli/search-replace-command/issues", - "source": "https://github.com/wp-cli/search-replace-command/tree/v2.1.7" + "source": "https://github.com/wp-cli/search-replace-command/tree/v2.1.8" }, - "time": "2024-06-28T09:30:38+00:00" + "time": "2025-04-02T13:07:50+00:00" }, { "name": "wp-cli/server-command", - "version": "v2.0.14", + "version": "v2.0.15", "source": { "type": "git", "url": "https://github.com/wp-cli/server-command.git", - "reference": "012e10d3281866235cbf626f38a27169d6c6e13b" + "reference": "80a9243f94e0ac073f9bfdb516d2ac7e1fa01a71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/server-command/zipball/012e10d3281866235cbf626f38a27169d6c6e13b", - "reference": "012e10d3281866235cbf626f38a27169d6c6e13b", + "url": "https://api.github.com/repos/wp-cli/server-command/zipball/80a9243f94e0ac073f9bfdb516d2ac7e1fa01a71", + "reference": "80a9243f94e0ac073f9bfdb516d2ac7e1fa01a71", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^2", @@ -9950,26 +10049,26 @@ "homepage": "https://github.com/wp-cli/server-command", "support": { "issues": "https://github.com/wp-cli/server-command/issues", - "source": "https://github.com/wp-cli/server-command/tree/v2.0.14" + "source": "https://github.com/wp-cli/server-command/tree/v2.0.15" }, - "time": "2024-10-01T10:46:38+00:00" + "time": "2025-04-10T11:03:13+00:00" }, { "name": "wp-cli/shell-command", - "version": "v2.0.15", + "version": "v2.0.16", "source": { "type": "git", "url": "https://github.com/wp-cli/shell-command.git", - "reference": "2c38ef12a912b23224c7f2abd5bc716a889340fb" + "reference": "3af53a9f4b240e03e77e815b2ee10f229f1aa591" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/shell-command/zipball/2c38ef12a912b23224c7f2abd5bc716a889340fb", - "reference": "2c38ef12a912b23224c7f2abd5bc716a889340fb", + "url": "https://api.github.com/repos/wp-cli/shell-command/zipball/3af53a9f4b240e03e77e815b2ee10f229f1aa591", + "reference": "3af53a9f4b240e03e77e815b2ee10f229f1aa591", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/wp-cli-tests": "^4" @@ -10007,26 +10106,26 @@ "homepage": "https://github.com/wp-cli/shell-command", "support": { "issues": "https://github.com/wp-cli/shell-command/issues", - "source": "https://github.com/wp-cli/shell-command/tree/v2.0.15" + "source": "https://github.com/wp-cli/shell-command/tree/v2.0.16" }, - "time": "2024-10-01T10:46:50+00:00" + "time": "2025-04-11T09:39:33+00:00" }, { "name": "wp-cli/super-admin-command", - "version": "v2.0.15", + "version": "v2.0.16", "source": { "type": "git", "url": "https://github.com/wp-cli/super-admin-command.git", - "reference": "ecd9cee09918eb34f60c05944cc188f4916cb026" + "reference": "54ac063c384743ee414806d42cb8c61c6aa1fa8e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/super-admin-command/zipball/ecd9cee09918eb34f60c05944cc188f4916cb026", - "reference": "ecd9cee09918eb34f60c05944cc188f4916cb026", + "url": "https://api.github.com/repos/wp-cli/super-admin-command/zipball/54ac063c384743ee414806d42cb8c61c6aa1fa8e", + "reference": "54ac063c384743ee414806d42cb8c61c6aa1fa8e", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/entity-command": "^1.3 || ^2", @@ -10068,26 +10167,26 @@ "homepage": "https://github.com/wp-cli/super-admin-command", "support": { "issues": "https://github.com/wp-cli/super-admin-command/issues", - "source": "https://github.com/wp-cli/super-admin-command/tree/v2.0.15" + "source": "https://github.com/wp-cli/super-admin-command/tree/v2.0.16" }, - "time": "2024-10-01T10:48:29+00:00" + "time": "2025-04-02T13:07:32+00:00" }, { "name": "wp-cli/widget-command", - "version": "v2.1.11", + "version": "v2.1.12", "source": { "type": "git", "url": "https://github.com/wp-cli/widget-command.git", - "reference": "c50cd32e4e3d16bf29821ae0208b7154ef6f9031" + "reference": "73084053f7b32d92583e44d870b81f287beea6a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/widget-command/zipball/c50cd32e4e3d16bf29821ae0208b7154ef6f9031", - "reference": "c50cd32e4e3d16bf29821ae0208b7154ef6f9031", + "url": "https://api.github.com/repos/wp-cli/widget-command/zipball/73084053f7b32d92583e44d870b81f287beea6a9", + "reference": "73084053f7b32d92583e44d870b81f287beea6a9", "shasum": "" }, "require": { - "wp-cli/wp-cli": "^2.5" + "wp-cli/wp-cli": "^2.12" }, "require-dev": { "wp-cli/extension-command": "^1.2 || ^2", @@ -10135,39 +10234,38 @@ "homepage": "https://github.com/wp-cli/widget-command", "support": { "issues": "https://github.com/wp-cli/widget-command/issues", - "source": "https://github.com/wp-cli/widget-command/tree/v2.1.11" + "source": "https://github.com/wp-cli/widget-command/tree/v2.1.12" }, - "time": "2024-10-01T10:48:21+00:00" + "time": "2025-04-11T09:29:37+00:00" }, { "name": "wp-cli/wp-cli", - "version": "v2.11.0", + "version": "v2.12.0", "source": { "type": "git", "url": "https://github.com/wp-cli/wp-cli.git", - "reference": "53f0df112901fcf95099d0f501912a209429b6a9" + "reference": "03d30d4138d12b4bffd8b507b82e56e129e0523f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/wp-cli/zipball/53f0df112901fcf95099d0f501912a209429b6a9", - "reference": "53f0df112901fcf95099d0f501912a209429b6a9", + "url": "https://api.github.com/repos/wp-cli/wp-cli/zipball/03d30d4138d12b4bffd8b507b82e56e129e0523f", + "reference": "03d30d4138d12b4bffd8b507b82e56e129e0523f", "shasum": "" }, "require": { "ext-curl": "*", - "mustache/mustache": "^2.14.1", "php": "^5.6 || ^7.0 || ^8.0", "symfony/finder": ">2.7", + "wp-cli/mustache": "^2.14.99", "wp-cli/mustangostang-spyc": "^0.6.3", - "wp-cli/php-cli-tools": "~0.11.2" + "wp-cli/php-cli-tools": "~0.12.4" }, "require-dev": { - "roave/security-advisories": "dev-latest", "wp-cli/db-command": "^1.3 || ^2", "wp-cli/entity-command": "^1.2 || ^2", "wp-cli/extension-command": "^1.1 || ^2", "wp-cli/package-command": "^1 || ^2", - "wp-cli/wp-cli-tests": "^4.0.1" + "wp-cli/wp-cli-tests": "^4.3.10" }, "suggest": { "ext-readline": "Include for a better --prompt implementation", @@ -10180,7 +10278,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.11.x-dev" + "dev-main": "2.12.x-dev" } }, "autoload": { @@ -10207,7 +10305,7 @@ "issues": "https://github.com/wp-cli/wp-cli/issues", "source": "https://github.com/wp-cli/wp-cli" }, - "time": "2024-08-08T03:04:55+00:00" + "time": "2025-05-07T01:16:12+00:00" }, { "name": "wp-cli/wp-cli-bundle", @@ -10284,16 +10382,16 @@ }, { "name": "wp-cli/wp-config-transformer", - "version": "v1.4.1", + "version": "v1.4.2", "source": { "type": "git", "url": "https://github.com/wp-cli/wp-config-transformer.git", - "reference": "9da378b5a4e28bba3bce4ff4ff04a54d8c9f1a01" + "reference": "b78cab1159b43eb5ee097e2cfafe5eab573d2a8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/wp-config-transformer/zipball/9da378b5a4e28bba3bce4ff4ff04a54d8c9f1a01", - "reference": "9da378b5a4e28bba3bce4ff4ff04a54d8c9f1a01", + "url": "https://api.github.com/repos/wp-cli/wp-config-transformer/zipball/b78cab1159b43eb5ee097e2cfafe5eab573d2a8a", + "reference": "b78cab1159b43eb5ee097e2cfafe5eab573d2a8a", "shasum": "" }, "require": { @@ -10327,9 +10425,9 @@ "homepage": "https://github.com/wp-cli/wp-config-transformer", "support": { "issues": "https://github.com/wp-cli/wp-config-transformer/issues", - "source": "https://github.com/wp-cli/wp-config-transformer/tree/v1.4.1" + "source": "https://github.com/wp-cli/wp-config-transformer/tree/v1.4.2" }, - "time": "2024-10-16T12:50:47+00:00" + "time": "2025-03-31T08:37:05+00:00" }, { "name": "wp-coding-standards/wpcs", @@ -10454,7 +10552,486 @@ "time": "2021-07-11T04:52:41+00:00" } ], - "packages-dev": [], + "packages-dev": [ + { + "name": "fidry/console", + "version": "0.5.5", + "source": { + "type": "git", + "url": "https://github.com/theofidry/console.git", + "reference": "bc1fe03f600c63f12ec0a39c6b746c1a1fb77bf7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theofidry/console/zipball/bc1fe03f600c63f12ec0a39c6b746c1a1fb77bf7", + "reference": "bc1fe03f600c63f12ec0a39c6b746c1a1fb77bf7", + "shasum": "" + }, + "require": { + "php": "^7.4.0 || ^8.0.0", + "symfony/console": "^4.4 || ^5.4 || ^6.1", + "symfony/event-dispatcher-contracts": "^1.0 || ^2.5 || ^3.0", + "symfony/service-contracts": "^1.0 || ^2.5 || ^3.0", + "thecodingmachine/safe": "^1.3 || ^2.0", + "webmozart/assert": "^1.11" + }, + "conflict": { + "symfony/dependency-injection": "<5.3.0", + "symfony/framework-bundle": "<5.3.0", + "symfony/http-kernel": "<5.3.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4", + "composer/semver": "^3.3", + "ergebnis/composer-normalize": "^2.28", + "infection/infection": "^0.26", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.4.3", + "symfony/dependency-injection": "^4.4 || ^5.4 || ^6.1", + "symfony/framework-bundle": "^4.4 || ^5.4 || ^6.1", + "symfony/http-kernel": "^4.4 || ^5.4 || ^6.1", + "symfony/phpunit-bridge": "^4.4.47 || ^5.4 || ^6.0", + "symfony/yaml": "^4.4 || ^5.4 || ^6.1", + "webmozarts/strict-phpunit": "^7.3" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": false, + "forward-command": false + }, + "branch-alias": { + "dev-main": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Fidry\\Console\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Théo Fidry", + "email": "theo.fidry@gmail.com" + } + ], + "description": "Library to create CLI applications", + "keywords": [ + "cli", + "console", + "symfony" + ], + "support": { + "issues": "https://github.com/theofidry/console/issues", + "source": "https://github.com/theofidry/console/tree/0.5.5" + }, + "funding": [ + { + "url": "https://github.com/theofidry", + "type": "github" + } + ], + "time": "2022-12-18T10:49:34+00:00" + }, + { + "name": "fidry/filesystem", + "version": "1.2.3", + "source": { + "type": "git", + "url": "https://github.com/theofidry/filesystem.git", + "reference": "3e1f9cac40f807b7c4196013ab77cc1b9416e3e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theofidry/filesystem/zipball/3e1f9cac40f807b7c4196013ab77cc1b9416e3e5", + "reference": "3e1f9cac40f807b7c4196013ab77cc1b9416e3e5", + "shasum": "" + }, + "require": { + "php": "^8.1", + "symfony/filesystem": "^6.4 || ^7.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4", + "ergebnis/composer-normalize": "^2.28", + "infection/infection": ">=0.26", + "phpunit/phpunit": "^10.3", + "symfony/finder": "^6.4 || ^7.0" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": false, + "forward-command": false + }, + "branch-alias": { + "dev-main": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Fidry\\FileSystem\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Théo Fidry", + "email": "theo.fidry@gmail.com" + } + ], + "description": "Symfony Filesystem with a few more utilities.", + "keywords": [ + "filesystem" + ], + "support": { + "issues": "https://github.com/theofidry/filesystem/issues", + "source": "https://github.com/theofidry/filesystem/tree/1.2.3" + }, + "funding": [ + { + "url": "https://github.com/theofidry", + "type": "github" + } + ], + "time": "2025-02-13T22:58:51+00:00" + }, + { + "name": "humbug/php-scoper", + "version": "0.18.7", + "source": { + "type": "git", + "url": "https://github.com/humbug/php-scoper.git", + "reference": "9386a0af946f175d7a1ebfb68851bc2bb8ad7858" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/humbug/php-scoper/zipball/9386a0af946f175d7a1ebfb68851bc2bb8ad7858", + "reference": "9386a0af946f175d7a1ebfb68851bc2bb8ad7858", + "shasum": "" + }, + "require": { + "fidry/console": "^0.5.0", + "fidry/filesystem": "^1.1", + "jetbrains/phpstorm-stubs": "^v2022.2", + "nikic/php-parser": "^4.12", + "php": "^8.1", + "symfony/console": "^5.2 || ^6.0", + "symfony/filesystem": "^5.2 || ^6.0", + "symfony/finder": "^5.2 || ^6.0", + "thecodingmachine/safe": "^2.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.1", + "ergebnis/composer-normalize": "^2.28", + "fidry/makefile": "^1.0", + "humbug/box": "^4.5.1", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.0", + "symfony/yaml": "^6.1" + }, + "bin": [ + "bin/php-scoper" + ], + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": false, + "forward-command": false + }, + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Humbug\\PhpScoper\\": "src/" + }, + "classmap": [ + "vendor-hotfix/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + }, + { + "name": "Théo Fidry", + "email": "theo.fidry@gmail.com" + }, + { + "name": "Pádraic Brady", + "email": "padraic.brady@gmail.com" + } + ], + "description": "Prefixes all PHP namespaces in a file or directory.", + "support": { + "issues": "https://github.com/humbug/php-scoper/issues", + "source": "https://github.com/humbug/php-scoper/tree/0.18.7" + }, + "time": "2023-11-04T18:01:12+00:00" + }, + { + "name": "jetbrains/phpstorm-stubs", + "version": "v2022.3", + "source": { + "type": "git", + "url": "https://github.com/JetBrains/phpstorm-stubs.git", + "reference": "6b568c153cea002dc6fad96285c3063d07cab18d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/6b568c153cea002dc6fad96285c3063d07cab18d", + "reference": "6b568c153cea002dc6fad96285c3063d07cab18d", + "shasum": "" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "@stable", + "nikic/php-parser": "@stable", + "php": "^8.0", + "phpdocumentor/reflection-docblock": "@stable", + "phpunit/phpunit": "@stable" + }, + "type": "library", + "autoload": { + "files": [ + "PhpStormStubsMap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "PHP runtime & extensions header files for PhpStorm", + "homepage": "https://www.jetbrains.com/phpstorm", + "keywords": [ + "autocomplete", + "code", + "inference", + "inspection", + "jetbrains", + "phpstorm", + "stubs", + "type" + ], + "support": { + "source": "https://github.com/JetBrains/phpstorm-stubs/tree/v2022.3" + }, + "time": "2022-10-17T09:21:37+00:00" + }, + { + "name": "thecodingmachine/safe", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/thecodingmachine/safe.git", + "reference": "3115ecd6b4391662b4931daac4eba6b07a2ac1f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thecodingmachine/safe/zipball/3115ecd6b4391662b4931daac4eba6b07a2ac1f0", + "reference": "3115ecd6b4391662b4931daac4eba6b07a2ac1f0", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.5", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.2", + "thecodingmachine/phpstan-strict-rules": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2.x-dev" + } + }, + "autoload": { + "files": [ + "deprecated/apc.php", + "deprecated/array.php", + "deprecated/datetime.php", + "deprecated/libevent.php", + "deprecated/misc.php", + "deprecated/password.php", + "deprecated/mssql.php", + "deprecated/stats.php", + "deprecated/strings.php", + "lib/special_cases.php", + "deprecated/mysqli.php", + "generated/apache.php", + "generated/apcu.php", + "generated/array.php", + "generated/bzip2.php", + "generated/calendar.php", + "generated/classobj.php", + "generated/com.php", + "generated/cubrid.php", + "generated/curl.php", + "generated/datetime.php", + "generated/dir.php", + "generated/eio.php", + "generated/errorfunc.php", + "generated/exec.php", + "generated/fileinfo.php", + "generated/filesystem.php", + "generated/filter.php", + "generated/fpm.php", + "generated/ftp.php", + "generated/funchand.php", + "generated/gettext.php", + "generated/gmp.php", + "generated/gnupg.php", + "generated/hash.php", + "generated/ibase.php", + "generated/ibmDb2.php", + "generated/iconv.php", + "generated/image.php", + "generated/imap.php", + "generated/info.php", + "generated/inotify.php", + "generated/json.php", + "generated/ldap.php", + "generated/libxml.php", + "generated/lzf.php", + "generated/mailparse.php", + "generated/mbstring.php", + "generated/misc.php", + "generated/mysql.php", + "generated/network.php", + "generated/oci8.php", + "generated/opcache.php", + "generated/openssl.php", + "generated/outcontrol.php", + "generated/pcntl.php", + "generated/pcre.php", + "generated/pgsql.php", + "generated/posix.php", + "generated/ps.php", + "generated/pspell.php", + "generated/readline.php", + "generated/rpminfo.php", + "generated/rrd.php", + "generated/sem.php", + "generated/session.php", + "generated/shmop.php", + "generated/sockets.php", + "generated/sodium.php", + "generated/solr.php", + "generated/spl.php", + "generated/sqlsrv.php", + "generated/ssdeep.php", + "generated/ssh2.php", + "generated/stream.php", + "generated/strings.php", + "generated/swoole.php", + "generated/uodbc.php", + "generated/uopz.php", + "generated/url.php", + "generated/var.php", + "generated/xdiff.php", + "generated/xml.php", + "generated/xmlrpc.php", + "generated/yaml.php", + "generated/yaz.php", + "generated/zip.php", + "generated/zlib.php" + ], + "classmap": [ + "lib/DateTime.php", + "lib/DateTimeImmutable.php", + "lib/Exceptions/", + "deprecated/Exceptions/", + "generated/Exceptions/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHP core functions that throw exceptions instead of returning FALSE on error", + "support": { + "issues": "https://github.com/thecodingmachine/safe/issues", + "source": "https://github.com/thecodingmachine/safe/tree/v2.5.0" + }, + "time": "2023-04-05T11:54:14+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.11.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "php": "^7.2 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.11.0" + }, + "time": "2022-06-03T18:03:27+00:00" + } + ], "aliases": [], "minimum-stability": "dev", "stability-flags": { diff --git a/prepare-release.sh b/prepare-release.sh new file mode 100755 index 0000000..b4b3a57 --- /dev/null +++ b/prepare-release.sh @@ -0,0 +1,48 @@ +#!/bin/bash +# prepare-release.sh +# Script to prepare a release by building the prefixed version and committing to a release branch + +# Check if a version argument was provided +if [ $# -eq 0 ]; then + echo "Usage: $0 " + echo "Example: $0 1.0.0" + exit 1 +fi + +VERSION=$1 +CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD) +RELEASE_BRANCH="release-${VERSION}" + +# Ensure we're working with a clean state +if [[ -n $(git status --porcelain) ]]; then + echo "Working directory is not clean. Please commit or stash your changes first." + exit 1 +fi + +echo "Preparing release ${VERSION}..." + +# Create and switch to a release branch +git checkout -b ${RELEASE_BRANCH} + +# Run the build process +echo "Building prefixed version..." +php build.php + +# Temporarily remove build/ from .gitignore to commit it +sed -i '' '/\/build\//d' .gitignore + +# Add the build directory to git +git add build/ .gitignore +git commit -m "Add prefixed build for release ${VERSION}" + +echo "" +echo "Release branch ${RELEASE_BRANCH} has been created with the prefixed build included." +echo "" +echo "Next steps:" +echo "1. Review the changes: git diff ${CURRENT_BRANCH}..${RELEASE_BRANCH}" +echo "2. Push the release branch: git push origin ${RELEASE_BRANCH}" +echo "3. Create a tag from this branch: git tag v${VERSION} && git push origin v${VERSION}" +echo "4. Packagist will automatically pull the new version" +echo "" +echo "After the release, switch back to your development branch:" +echo "git checkout ${CURRENT_BRANCH}" \ No newline at end of file diff --git a/scoper.inc.php b/scoper.inc.php new file mode 100644 index 0000000..7f450d8 --- /dev/null +++ b/scoper.inc.php @@ -0,0 +1,32 @@ + 'UncannyOwl\\DevTools\\Vendor', + + 'patchers' => [], + + 'exclude-namespaces' => [ + 'UncannyOwl\\DevTools\\*', + ], + + 'exclude-files' => [ + // No files to exclude + ], + + 'expose-global-constants' => false, + 'expose-global-classes' => false, + 'expose-global-functions' => false, + + // Explicitly find and prefix Codeception classes + 'finders' => [ + \Isolated\Symfony\Component\Finder\Finder::create() + ->files() + ->in('vendor/codeception') + ->in('vendor/lucatume'), + ], +]; \ No newline at end of file diff --git a/src/TestDetection.php b/src/TestDetection.php new file mode 100644 index 0000000..2272330 --- /dev/null +++ b/src/TestDetection.php @@ -0,0 +1,35 @@ +