diff --git a/.github/workflows/php-test.yml b/.github/workflows/php-test.yml
index 59995f996..3b014ba3e 100644
--- a/.github/workflows/php-test.yml
+++ b/.github/workflows/php-test.yml
@@ -41,7 +41,7 @@ concurrency:
jobs:
php-test:
- name: PHP ${{ matrix.php }} - WP ${{ matrix.wordpress }}${{ matrix.experimental && ' (experimental)' || '' }}
+ name: PHP ${{ matrix.php }} - WP ${{ matrix.wordpress }}${{ matrix.experimental && ' (experimental)' || '' }}${{ matrix.coverage && ' (with coverage)' || '' }}
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
@@ -55,9 +55,11 @@ jobs:
- '7.4'
- '8.0'
- '8.1'
- - '8.2'
wordpress: [ 'latest' ]
include:
+ - php: '8.2'
+ wordpress: 'latest'
+ coverage: true
- php: '8.2'
wordpress: 'trunk'
experimental: true
@@ -70,7 +72,7 @@ jobs:
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
-
+
- name: Setup Node.js (.nvmrc)
uses: actions/setup-node@v3
with:
@@ -80,11 +82,27 @@ jobs:
- name: npm install
run: npm ci
- - name: Install WordPress
- run: npm run wp-env start
+ - name: Start WordPress
+ run: |
+ if [[ ${{ matrix.coverage == true }} == true ]]; then
+ npm run wp-env start -- --xdebug=coverage
+ else
+ npm run wp-env start
+ fi
- - name: Running php unit tests
- run: npm run test-php
+ - name: Run tests
+ run: |
+ if [[ ${{ matrix.coverage == true }} == true ]]; then
+ npm run test-php-coverage
+ npm run test-php-multisite-coverage
+ else
+ npm run test-php
+ npm run test-php-multisite
+ fi
- - name: Running multisite unit tests
- run: npm run test-php-multisite
+ - name: Upload code coverage report
+ if: ${{ matrix.coverage }}
+ uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d
+ with:
+ file: build/logs/*.xml
+ flags: unit
diff --git a/.gitignore b/.gitignore
index b7537e26f..30a0c3c28 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,6 +30,9 @@ build
node_modules/
vendor/
build-cs/vendor/
+build-cs/composer.lock
+build-phpunit/vendor/
+build-phpunit/composer.lock
############
## OSes
diff --git a/build-cs/composer.json b/build-cs/composer.json
index 5fbaeb1be..33f503d11 100644
--- a/build-cs/composer.json
+++ b/build-cs/composer.json
@@ -3,8 +3,8 @@
"dealerdirect/phpcodesniffer-composer-installer": "^1.0.0",
"phpcompatibility/php-compatibility": "^9.3",
"phpmd/phpmd": "^2.9",
- "phpstan/phpstan": "^1.10",
"phpstan/extension-installer": "^1.2",
+ "phpstan/phpstan": "^1.10",
"slevomat/coding-standard": "^8.9",
"szepeviktor/phpstan-wordpress": "^1.1",
"wp-coding-standards/wpcs": "^3.0.0"
@@ -13,9 +13,6 @@
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true,
"phpstan/extension-installer": true
- },
- "platform": {
- "php": "8.0"
}
}
}
diff --git a/build-cs/composer.lock b/build-cs/composer.lock
deleted file mode 100644
index 1cfda6347..000000000
--- a/build-cs/composer.lock
+++ /dev/null
@@ -1,1918 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
- "This file is @generated automatically"
- ],
- "content-hash": "effb6123cabe174a740530e32679a77d",
- "packages": [],
- "packages-dev": [
- {
- "name": "composer/pcre",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/pcre.git",
- "reference": "00104306927c7a0919b4ced2aaa6782c1e61a3c9"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/pcre/zipball/00104306927c7a0919b4ced2aaa6782c1e61a3c9",
- "reference": "00104306927c7a0919b4ced2aaa6782c1e61a3c9",
- "shasum": ""
- },
- "require": {
- "php": "^7.4 || ^8.0"
- },
- "require-dev": {
- "phpstan/phpstan": "^1.3",
- "phpstan/phpstan-strict-rules": "^1.1",
- "symfony/phpunit-bridge": "^5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "3.x-dev"
- }
- },
- "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.1.1"
- },
- "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"
- }
- ],
- "time": "2023-10-11T07:11:09+00:00"
- },
- {
- "name": "composer/xdebug-handler",
- "version": "3.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/xdebug-handler.git",
- "reference": "ced299686f41dce890debac69273b47ffe98a40c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c",
- "reference": "ced299686f41dce890debac69273b47ffe98a40c",
- "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",
- "symfony/phpunit-bridge": "^6.0"
- },
- "type": "library",
- "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": "irc://irc.freenode.org/composer",
- "issues": "https://github.com/composer/xdebug-handler/issues",
- "source": "https://github.com/composer/xdebug-handler/tree/3.0.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"
- }
- ],
- "time": "2022-02-25T21:32:43+00:00"
- },
- {
- "name": "dealerdirect/phpcodesniffer-composer-installer",
- "version": "v1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/PHPCSStandards/composer-installer.git",
- "reference": "4be43904336affa5c2f70744a348312336afd0da"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHPCSStandards/composer-installer/zipball/4be43904336affa5c2f70744a348312336afd0da",
- "reference": "4be43904336affa5c2f70744a348312336afd0da",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "^1.0 || ^2.0",
- "php": ">=5.4",
- "squizlabs/php_codesniffer": "^2.0 || ^3.1.0 || ^4.0"
- },
- "require-dev": {
- "composer/composer": "*",
- "ext-json": "*",
- "ext-zip": "*",
- "php-parallel-lint/php-parallel-lint": "^1.3.1",
- "phpcompatibility/php-compatibility": "^9.0",
- "yoast/phpunit-polyfills": "^1.0"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "PHPCSStandards\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin"
- },
- "autoload": {
- "psr-4": {
- "PHPCSStandards\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Franck Nijhof",
- "email": "franck.nijhof@dealerdirect.com",
- "homepage": "http://www.frenck.nl",
- "role": "Developer / IT Manager"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/PHPCSStandards/composer-installer/graphs/contributors"
- }
- ],
- "description": "PHP_CodeSniffer Standards Composer Installer Plugin",
- "homepage": "http://www.dealerdirect.com",
- "keywords": [
- "PHPCodeSniffer",
- "PHP_CodeSniffer",
- "code quality",
- "codesniffer",
- "composer",
- "installer",
- "phpcbf",
- "phpcs",
- "plugin",
- "qa",
- "quality",
- "standard",
- "standards",
- "style guide",
- "stylecheck",
- "tests"
- ],
- "support": {
- "issues": "https://github.com/PHPCSStandards/composer-installer/issues",
- "source": "https://github.com/PHPCSStandards/composer-installer"
- },
- "time": "2023-01-05T11:28:13+00:00"
- },
- {
- "name": "pdepend/pdepend",
- "version": "2.15.1",
- "source": {
- "type": "git",
- "url": "https://github.com/pdepend/pdepend.git",
- "reference": "d12f25bcdfb7754bea458a4a5cb159d55e9950d0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/pdepend/pdepend/zipball/d12f25bcdfb7754bea458a4a5cb159d55e9950d0",
- "reference": "d12f25bcdfb7754bea458a4a5cb159d55e9950d0",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.7",
- "symfony/config": "^2.3.0|^3|^4|^5|^6.0",
- "symfony/dependency-injection": "^2.3.0|^3|^4|^5|^6.0",
- "symfony/filesystem": "^2.3.0|^3|^4|^5|^6.0"
- },
- "require-dev": {
- "easy-doc/easy-doc": "0.0.0|^1.2.3",
- "gregwar/rst": "^1.0",
- "phpunit/phpunit": "^4.8.36|^5.7.27",
- "squizlabs/php_codesniffer": "^2.0.0"
- },
- "bin": [
- "src/bin/pdepend"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "PDepend\\": "src/main/php/PDepend"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "description": "Official version of pdepend to be handled with Composer",
- "keywords": [
- "PHP Depend",
- "PHP_Depend",
- "dev",
- "pdepend"
- ],
- "support": {
- "issues": "https://github.com/pdepend/pdepend/issues",
- "source": "https://github.com/pdepend/pdepend/tree/2.15.1"
- },
- "funding": [
- {
- "url": "https://tidelift.com/funding/github/packagist/pdepend/pdepend",
- "type": "tidelift"
- }
- ],
- "time": "2023-09-28T12:00:56+00:00"
- },
- {
- "name": "php-stubs/wordpress-stubs",
- "version": "v6.3.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-stubs/wordpress-stubs.git",
- "reference": "f22b00cacd3b9addc2b07ff48290084503c48574"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/f22b00cacd3b9addc2b07ff48290084503c48574",
- "reference": "f22b00cacd3b9addc2b07ff48290084503c48574",
- "shasum": ""
- },
- "require-dev": {
- "nikic/php-parser": "^4.13",
- "php": "^7.4 || ~8.0.0",
- "php-stubs/generator": "^0.8.3",
- "phpdocumentor/reflection-docblock": "^5.3",
- "phpstan/phpstan": "^1.10.12",
- "phpunit/phpunit": "^9.5"
- },
- "suggest": {
- "paragonie/sodium_compat": "Pure PHP implementation of libsodium",
- "symfony/polyfill-php80": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
- "szepeviktor/phpstan-wordpress": "WordPress extensions for PHPStan"
- },
- "type": "library",
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "WordPress function and class declaration stubs for static analysis.",
- "homepage": "https://github.com/php-stubs/wordpress-stubs",
- "keywords": [
- "PHPStan",
- "static analysis",
- "wordpress"
- ],
- "support": {
- "issues": "https://github.com/php-stubs/wordpress-stubs/issues",
- "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.3.2"
- },
- "time": "2023-10-14T10:08:05+00:00"
- },
- {
- "name": "phpcompatibility/php-compatibility",
- "version": "9.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/PHPCompatibility/PHPCompatibility.git",
- "reference": "9fb324479acf6f39452e0655d2429cc0d3914243"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9fb324479acf6f39452e0655d2429cc0d3914243",
- "reference": "9fb324479acf6f39452e0655d2429cc0d3914243",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3",
- "squizlabs/php_codesniffer": "^2.3 || ^3.0.2"
- },
- "conflict": {
- "squizlabs/php_codesniffer": "2.6.2"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0"
- },
- "suggest": {
- "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.",
- "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
- },
- "type": "phpcodesniffer-standard",
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "LGPL-3.0-or-later"
- ],
- "authors": [
- {
- "name": "Wim Godden",
- "homepage": "https://github.com/wimg",
- "role": "lead"
- },
- {
- "name": "Juliette Reinders Folmer",
- "homepage": "https://github.com/jrfnl",
- "role": "lead"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/PHPCompatibility/PHPCompatibility/graphs/contributors"
- }
- ],
- "description": "A set of sniffs for PHP_CodeSniffer that checks for PHP cross-version compatibility.",
- "homepage": "http://techblog.wimgodden.be/tag/codesniffer/",
- "keywords": [
- "compatibility",
- "phpcs",
- "standards"
- ],
- "support": {
- "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues",
- "source": "https://github.com/PHPCompatibility/PHPCompatibility"
- },
- "time": "2019-12-27T09:44:58+00:00"
- },
- {
- "name": "phpcsstandards/phpcsextra",
- "version": "1.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/PHPCSStandards/PHPCSExtra.git",
- "reference": "746c3190ba8eb2f212087c947ba75f4f5b9a58d5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/746c3190ba8eb2f212087c947ba75f4f5b9a58d5",
- "reference": "746c3190ba8eb2f212087c947ba75f4f5b9a58d5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4",
- "phpcsstandards/phpcsutils": "^1.0.8",
- "squizlabs/php_codesniffer": "^3.7.1"
- },
- "require-dev": {
- "php-parallel-lint/php-console-highlighter": "^1.0",
- "php-parallel-lint/php-parallel-lint": "^1.3.2",
- "phpcsstandards/phpcsdevcs": "^1.1.6",
- "phpcsstandards/phpcsdevtools": "^1.2.1",
- "phpunit/phpunit": "^4.5 || ^5.0 || ^6.0 || ^7.0"
- },
- "type": "phpcodesniffer-standard",
- "extra": {
- "branch-alias": {
- "dev-stable": "1.x-dev",
- "dev-develop": "1.x-dev"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "LGPL-3.0-or-later"
- ],
- "authors": [
- {
- "name": "Juliette Reinders Folmer",
- "homepage": "https://github.com/jrfnl",
- "role": "lead"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/PHPCSStandards/PHPCSExtra/graphs/contributors"
- }
- ],
- "description": "A collection of sniffs and standards for use with PHP_CodeSniffer.",
- "keywords": [
- "PHP_CodeSniffer",
- "phpcbf",
- "phpcodesniffer-standard",
- "phpcs",
- "standards",
- "static analysis"
- ],
- "support": {
- "issues": "https://github.com/PHPCSStandards/PHPCSExtra/issues",
- "source": "https://github.com/PHPCSStandards/PHPCSExtra"
- },
- "time": "2023-09-20T22:06:18+00:00"
- },
- {
- "name": "phpcsstandards/phpcsutils",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/PHPCSStandards/PHPCSUtils.git",
- "reference": "69465cab9d12454e5e7767b9041af0cd8cd13be7"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/69465cab9d12454e5e7767b9041af0cd8cd13be7",
- "reference": "69465cab9d12454e5e7767b9041af0cd8cd13be7",
- "shasum": ""
- },
- "require": {
- "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0",
- "php": ">=5.4",
- "squizlabs/php_codesniffer": "^3.7.1 || 4.0.x-dev@dev"
- },
- "require-dev": {
- "ext-filter": "*",
- "php-parallel-lint/php-console-highlighter": "^1.0",
- "php-parallel-lint/php-parallel-lint": "^1.3.2",
- "phpcsstandards/phpcsdevcs": "^1.1.6",
- "yoast/phpunit-polyfills": "^1.0.5 || ^2.0.0"
- },
- "type": "phpcodesniffer-standard",
- "extra": {
- "branch-alias": {
- "dev-stable": "1.x-dev",
- "dev-develop": "1.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "PHPCSUtils/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "LGPL-3.0-or-later"
- ],
- "authors": [
- {
- "name": "Juliette Reinders Folmer",
- "homepage": "https://github.com/jrfnl",
- "role": "lead"
- },
- {
- "name": "Contributors",
- "homepage": "https://github.com/PHPCSStandards/PHPCSUtils/graphs/contributors"
- }
- ],
- "description": "A suite of utility functions for use with PHP_CodeSniffer",
- "homepage": "https://phpcsutils.com/",
- "keywords": [
- "PHP_CodeSniffer",
- "phpcbf",
- "phpcodesniffer-standard",
- "phpcs",
- "phpcs3",
- "standards",
- "static analysis",
- "tokens",
- "utility"
- ],
- "support": {
- "docs": "https://phpcsutils.com/",
- "issues": "https://github.com/PHPCSStandards/PHPCSUtils/issues",
- "source": "https://github.com/PHPCSStandards/PHPCSUtils"
- },
- "time": "2023-07-16T21:39:41+00:00"
- },
- {
- "name": "phpmd/phpmd",
- "version": "2.14.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpmd/phpmd.git",
- "reference": "442fc2c34edcd5198b442d8647c7f0aec3afabe8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpmd/phpmd/zipball/442fc2c34edcd5198b442d8647c7f0aec3afabe8",
- "reference": "442fc2c34edcd5198b442d8647c7f0aec3afabe8",
- "shasum": ""
- },
- "require": {
- "composer/xdebug-handler": "^1.0 || ^2.0 || ^3.0",
- "ext-xml": "*",
- "pdepend/pdepend": "^2.15.1",
- "php": ">=5.3.9"
- },
- "require-dev": {
- "easy-doc/easy-doc": "0.0.0 || ^1.3.2",
- "ext-json": "*",
- "ext-simplexml": "*",
- "gregwar/rst": "^1.0",
- "mikey179/vfsstream": "^1.6.8",
- "phpunit/phpunit": "^4.8.36 || ^5.7.27",
- "squizlabs/php_codesniffer": "^2.9.2 || ^3.7.2"
- },
- "bin": [
- "src/bin/phpmd"
- ],
- "type": "library",
- "autoload": {
- "psr-0": {
- "PHPMD\\": "src/main/php"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Manuel Pichler",
- "email": "github@manuel-pichler.de",
- "homepage": "https://github.com/manuelpichler",
- "role": "Project Founder"
- },
- {
- "name": "Marc Würth",
- "email": "ravage@bluewin.ch",
- "homepage": "https://github.com/ravage84",
- "role": "Project Maintainer"
- },
- {
- "name": "Other contributors",
- "homepage": "https://github.com/phpmd/phpmd/graphs/contributors",
- "role": "Contributors"
- }
- ],
- "description": "PHPMD is a spin-off project of PHP Depend and aims to be a PHP equivalent of the well known Java tool PMD.",
- "homepage": "https://phpmd.org/",
- "keywords": [
- "dev",
- "mess detection",
- "mess detector",
- "pdepend",
- "phpmd",
- "pmd"
- ],
- "support": {
- "irc": "irc://irc.freenode.org/phpmd",
- "issues": "https://github.com/phpmd/phpmd/issues",
- "source": "https://github.com/phpmd/phpmd/tree/2.14.1"
- },
- "funding": [
- {
- "url": "https://tidelift.com/funding/github/packagist/phpmd/phpmd",
- "type": "tidelift"
- }
- ],
- "time": "2023-09-28T13:07:44+00:00"
- },
- {
- "name": "phpstan/extension-installer",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/extension-installer.git",
- "reference": "f45734bfb9984c6c56c4486b71230355f066a58a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/f45734bfb9984c6c56c4486b71230355f066a58a",
- "reference": "f45734bfb9984c6c56c4486b71230355f066a58a",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "^2.0",
- "php": "^7.2 || ^8.0",
- "phpstan/phpstan": "^1.9.0"
- },
- "require-dev": {
- "composer/composer": "^2.0",
- "php-parallel-lint/php-parallel-lint": "^1.2.0",
- "phpstan/phpstan-strict-rules": "^0.11 || ^0.12 || ^1.0"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "PHPStan\\ExtensionInstaller\\Plugin"
- },
- "autoload": {
- "psr-4": {
- "PHPStan\\ExtensionInstaller\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Composer plugin for automatic installation of PHPStan extensions",
- "support": {
- "issues": "https://github.com/phpstan/extension-installer/issues",
- "source": "https://github.com/phpstan/extension-installer/tree/1.3.1"
- },
- "time": "2023-05-24T08:59:17+00:00"
- },
- {
- "name": "phpstan/phpdoc-parser",
- "version": "1.24.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "bcad8d995980440892759db0c32acae7c8e79442"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/bcad8d995980440892759db0c32acae7c8e79442",
- "reference": "bcad8d995980440892759db0c32acae7c8e79442",
- "shasum": ""
- },
- "require": {
- "php": "^7.2 || ^8.0"
- },
- "require-dev": {
- "doctrine/annotations": "^2.0",
- "nikic/php-parser": "^4.15",
- "php-parallel-lint/php-parallel-lint": "^1.2",
- "phpstan/extension-installer": "^1.0",
- "phpstan/phpstan": "^1.5",
- "phpstan/phpstan-phpunit": "^1.1",
- "phpstan/phpstan-strict-rules": "^1.0",
- "phpunit/phpunit": "^9.5",
- "symfony/process": "^5.2"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "PHPStan\\PhpDocParser\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "PHPDoc parser with support for nullable, intersection and generic types",
- "support": {
- "issues": "https://github.com/phpstan/phpdoc-parser/issues",
- "source": "https://github.com/phpstan/phpdoc-parser/tree/1.24.2"
- },
- "time": "2023-09-26T12:28:12+00:00"
- },
- {
- "name": "phpstan/phpstan",
- "version": "1.10.38",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/phpstan.git",
- "reference": "5302bb402c57f00fb3c2c015bac86e0827e4b691"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/5302bb402c57f00fb3c2c015bac86e0827e4b691",
- "reference": "5302bb402c57f00fb3c2c015bac86e0827e4b691",
- "shasum": ""
- },
- "require": {
- "php": "^7.2|^8.0"
- },
- "conflict": {
- "phpstan/phpstan-shim": "*"
- },
- "bin": [
- "phpstan",
- "phpstan.phar"
- ],
- "type": "library",
- "autoload": {
- "files": [
- "bootstrap.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "PHPStan - PHP Static Analysis Tool",
- "keywords": [
- "dev",
- "static analysis"
- ],
- "support": {
- "docs": "https://phpstan.org/user-guide/getting-started",
- "forum": "https://github.com/phpstan/phpstan/discussions",
- "issues": "https://github.com/phpstan/phpstan/issues",
- "security": "https://github.com/phpstan/phpstan/security/policy",
- "source": "https://github.com/phpstan/phpstan-src"
- },
- "funding": [
- {
- "url": "https://github.com/ondrejmirtes",
- "type": "github"
- },
- {
- "url": "https://github.com/phpstan",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
- "type": "tidelift"
- }
- ],
- "time": "2023-10-06T14:19:14+00:00"
- },
- {
- "name": "psr/container",
- "version": "1.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/container.git",
- "reference": "513e0666f7216c7459170d56df27dfcefe1689ea"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea",
- "reference": "513e0666f7216c7459170d56df27dfcefe1689ea",
- "shasum": ""
- },
- "require": {
- "php": ">=7.4.0"
- },
- "type": "library",
- "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/1.1.2"
- },
- "time": "2021-11-05T16:50:12+00:00"
- },
- {
- "name": "psr/log",
- "version": "3.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
- "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
- "shasum": ""
- },
- "require": {
- "php": ">=8.0.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.x-dev"
- }
- },
- "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/3.0.0"
- },
- "time": "2021-07-14T16:46:02+00:00"
- },
- {
- "name": "slevomat/coding-standard",
- "version": "8.14.1",
- "source": {
- "type": "git",
- "url": "https://github.com/slevomat/coding-standard.git",
- "reference": "fea1fd6f137cc84f9cba0ae30d549615dbc6a926"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/fea1fd6f137cc84f9cba0ae30d549615dbc6a926",
- "reference": "fea1fd6f137cc84f9cba0ae30d549615dbc6a926",
- "shasum": ""
- },
- "require": {
- "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.0",
- "php": "^7.2 || ^8.0",
- "phpstan/phpdoc-parser": "^1.23.1",
- "squizlabs/php_codesniffer": "^3.7.1"
- },
- "require-dev": {
- "phing/phing": "2.17.4",
- "php-parallel-lint/php-parallel-lint": "1.3.2",
- "phpstan/phpstan": "1.10.37",
- "phpstan/phpstan-deprecation-rules": "1.1.4",
- "phpstan/phpstan-phpunit": "1.3.14",
- "phpstan/phpstan-strict-rules": "1.5.1",
- "phpunit/phpunit": "8.5.21|9.6.8|10.3.5"
- },
- "type": "phpcodesniffer-standard",
- "extra": {
- "branch-alias": {
- "dev-master": "8.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "SlevomatCodingStandard\\": "SlevomatCodingStandard/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Slevomat Coding Standard for PHP_CodeSniffer complements Consistence Coding Standard by providing sniffs with additional checks.",
- "keywords": [
- "dev",
- "phpcs"
- ],
- "support": {
- "issues": "https://github.com/slevomat/coding-standard/issues",
- "source": "https://github.com/slevomat/coding-standard/tree/8.14.1"
- },
- "funding": [
- {
- "url": "https://github.com/kukulich",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/slevomat/coding-standard",
- "type": "tidelift"
- }
- ],
- "time": "2023-10-08T07:28:08+00:00"
- },
- {
- "name": "squizlabs/php_codesniffer",
- "version": "3.7.2",
- "source": {
- "type": "git",
- "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
- "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ed8e00df0a83aa96acf703f8c2979ff33341f879",
- "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879",
- "shasum": ""
- },
- "require": {
- "ext-simplexml": "*",
- "ext-tokenizer": "*",
- "ext-xmlwriter": "*",
- "php": ">=5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
- },
- "bin": [
- "bin/phpcs",
- "bin/phpcbf"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.x-dev"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Greg Sherwood",
- "role": "lead"
- }
- ],
- "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
- "homepage": "https://github.com/squizlabs/PHP_CodeSniffer",
- "keywords": [
- "phpcs",
- "standards",
- "static analysis"
- ],
- "support": {
- "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues",
- "source": "https://github.com/squizlabs/PHP_CodeSniffer",
- "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki"
- },
- "time": "2023-02-22T23:07:41+00:00"
- },
- {
- "name": "symfony/config",
- "version": "v5.4.26",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/config.git",
- "reference": "8109892f27beed9252bd1f1c1880aeb4ad842650"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/8109892f27beed9252bd1f1c1880aeb4ad842650",
- "reference": "8109892f27beed9252bd1f1c1880aeb4ad842650",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.5",
- "symfony/deprecation-contracts": "^2.1|^3",
- "symfony/filesystem": "^4.4|^5.0|^6.0",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-php80": "^1.16",
- "symfony/polyfill-php81": "^1.22"
- },
- "conflict": {
- "symfony/finder": "<4.4"
- },
- "require-dev": {
- "symfony/event-dispatcher": "^4.4|^5.0|^6.0",
- "symfony/finder": "^4.4|^5.0|^6.0",
- "symfony/messenger": "^4.4|^5.0|^6.0",
- "symfony/service-contracts": "^1.1|^2|^3",
- "symfony/yaml": "^4.4|^5.0|^6.0"
- },
- "suggest": {
- "symfony/yaml": "To use the yaml reference dumper"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Config\\": ""
- },
- "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": "Helps you find, load, combine, autofill and validate configuration values of any kind",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/config/tree/v5.4.26"
- },
- "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"
- }
- ],
- "time": "2023-07-19T20:21:11+00:00"
- },
- {
- "name": "symfony/dependency-injection",
- "version": "v5.4.29",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dependency-injection.git",
- "reference": "338638ed8c9d5c7fcb136a73f5c7043465ae2f05"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/338638ed8c9d5c7fcb136a73f5c7043465ae2f05",
- "reference": "338638ed8c9d5c7fcb136a73f5c7043465ae2f05",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.5",
- "psr/container": "^1.1.1",
- "symfony/deprecation-contracts": "^2.1|^3",
- "symfony/polyfill-php80": "^1.16",
- "symfony/polyfill-php81": "^1.22",
- "symfony/service-contracts": "^1.1.6|^2"
- },
- "conflict": {
- "ext-psr": "<1.1|>=2",
- "symfony/config": "<5.3",
- "symfony/finder": "<4.4",
- "symfony/proxy-manager-bridge": "<4.4",
- "symfony/yaml": "<4.4.26"
- },
- "provide": {
- "psr/container-implementation": "1.0",
- "symfony/service-implementation": "1.0|2.0"
- },
- "require-dev": {
- "symfony/config": "^5.3|^6.0",
- "symfony/expression-language": "^4.4|^5.0|^6.0",
- "symfony/yaml": "^4.4.26|^5.0|^6.0"
- },
- "suggest": {
- "symfony/config": "",
- "symfony/expression-language": "For using expressions in service container configuration",
- "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required",
- "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
- "symfony/yaml": ""
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DependencyInjection\\": ""
- },
- "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": "Allows you to standardize and centralize the way objects are constructed in your application",
- "homepage": "https://symfony.com",
- "support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v5.4.29"
- },
- "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"
- }
- ],
- "time": "2023-09-20T06:23:43+00:00"
- },
- {
- "name": "symfony/deprecation-contracts",
- "version": "v2.5.2",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
- "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "2.5-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
- }
- },
- "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/v2.5.2"
- },
- "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"
- }
- ],
- "time": "2022-01-02T09:53:40+00:00"
- },
- {
- "name": "symfony/filesystem",
- "version": "v5.4.25",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/filesystem.git",
- "reference": "0ce3a62c9579a53358d3a7eb6b3dfb79789a6364"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/0ce3a62c9579a53358d3a7eb6b3dfb79789a6364",
- "reference": "0ce3a62c9579a53358d3a7eb6b3dfb79789a6364",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.5",
- "symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-mbstring": "~1.8",
- "symfony/polyfill-php80": "^1.16"
- },
- "type": "library",
- "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/v5.4.25"
- },
- "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"
- }
- ],
- "time": "2023-05-31T13:04:02+00:00"
- },
- {
- "name": "symfony/polyfill-ctype",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
- "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "provide": {
- "ext-ctype": "*"
- },
- "suggest": {
- "ext-ctype": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "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.28.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"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "42292d99c55abe617799667f454222c54c60e229"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
- "reference": "42292d99c55abe617799667f454222c54c60e229",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "provide": {
- "ext-mbstring": "*"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "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.28.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"
- }
- ],
- "time": "2023-07-28T09:04:16+00:00"
- },
- {
- "name": "symfony/polyfill-php73",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php73.git",
- "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fe2f306d1d9d346a7fee353d0d5012e401e984b5",
- "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php73\\": ""
- },
- "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 7.3+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php73/tree/v1.28.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"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-php80",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
- "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "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.28.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"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/polyfill-php81",
- "version": "v1.28.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php81.git",
- "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b",
- "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "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.28.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"
- }
- ],
- "time": "2023-01-26T09:26:14+00:00"
- },
- {
- "name": "symfony/service-contracts",
- "version": "v2.5.2",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/service-contracts.git",
- "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
- "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2.5",
- "psr/container": "^1.1",
- "symfony/deprecation-contracts": "^2.1|^3"
- },
- "conflict": {
- "ext-psr": "<1.1|>=2"
- },
- "suggest": {
- "symfony/service-implementation": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "2.5-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Contracts\\Service\\": ""
- }
- },
- "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/v2.5.2"
- },
- "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"
- }
- ],
- "time": "2022-05-30T19:17:29+00:00"
- },
- {
- "name": "szepeviktor/phpstan-wordpress",
- "version": "v1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/szepeviktor/phpstan-wordpress.git",
- "reference": "78db560e7989b50b05bec50ee5d862b41892654a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/szepeviktor/phpstan-wordpress/zipball/78db560e7989b50b05bec50ee5d862b41892654a",
- "reference": "78db560e7989b50b05bec50ee5d862b41892654a",
- "shasum": ""
- },
- "require": {
- "php": "^7.2 || ^8.0",
- "php-stubs/wordpress-stubs": "^4.7 || ^5.0 || ^6.0",
- "phpstan/phpstan": "^1.10.0",
- "symfony/polyfill-php73": "^1.12.0"
- },
- "require-dev": {
- "composer/composer": "^2.1.14",
- "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
- "php-parallel-lint/php-parallel-lint": "^1.1",
- "phpstan/phpstan-strict-rules": "^1.2",
- "phpunit/phpunit": "^8.0 || ^9.0",
- "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^0.8"
- },
- "suggest": {
- "swissspidy/phpstan-no-private": "Detect usage of internal core functions, classes and methods"
- },
- "type": "phpstan-extension",
- "extra": {
- "phpstan": {
- "includes": [
- "extension.neon"
- ]
- }
- },
- "autoload": {
- "psr-4": {
- "SzepeViktor\\PHPStan\\WordPress\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "WordPress extensions for PHPStan",
- "keywords": [
- "PHPStan",
- "code analyse",
- "code analysis",
- "static analysis",
- "wordpress"
- ],
- "support": {
- "issues": "https://github.com/szepeviktor/phpstan-wordpress/issues",
- "source": "https://github.com/szepeviktor/phpstan-wordpress/tree/v1.3.1"
- },
- "time": "2023-10-14T18:59:35+00:00"
- },
- {
- "name": "wp-coding-standards/wpcs",
- "version": "3.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/WordPress/WordPress-Coding-Standards.git",
- "reference": "b4caf9689f1a0e4a4c632679a44e638c1c67aff1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/b4caf9689f1a0e4a4c632679a44e638c1c67aff1",
- "reference": "b4caf9689f1a0e4a4c632679a44e638c1c67aff1",
- "shasum": ""
- },
- "require": {
- "ext-filter": "*",
- "ext-libxml": "*",
- "ext-tokenizer": "*",
- "ext-xmlreader": "*",
- "php": ">=5.4",
- "phpcsstandards/phpcsextra": "^1.1.0",
- "phpcsstandards/phpcsutils": "^1.0.8",
- "squizlabs/php_codesniffer": "^3.7.2"
- },
- "require-dev": {
- "php-parallel-lint/php-console-highlighter": "^1.0.0",
- "php-parallel-lint/php-parallel-lint": "^1.3.2",
- "phpcompatibility/php-compatibility": "^9.0",
- "phpcsstandards/phpcsdevtools": "^1.2.0",
- "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
- },
- "suggest": {
- "ext-iconv": "For improved results",
- "ext-mbstring": "For improved results"
- },
- "type": "phpcodesniffer-standard",
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Contributors",
- "homepage": "https://github.com/WordPress/WordPress-Coding-Standards/graphs/contributors"
- }
- ],
- "description": "PHP_CodeSniffer rules (sniffs) to enforce WordPress coding conventions",
- "keywords": [
- "phpcs",
- "standards",
- "static analysis",
- "wordpress"
- ],
- "support": {
- "issues": "https://github.com/WordPress/WordPress-Coding-Standards/issues",
- "source": "https://github.com/WordPress/WordPress-Coding-Standards",
- "wiki": "https://github.com/WordPress/WordPress-Coding-Standards/wiki"
- },
- "funding": [
- {
- "url": "https://opencollective.com/thewpcc/contribute/wp-php-63406",
- "type": "custom"
- }
- ],
- "time": "2023-09-14T07:06:09+00:00"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": {
- "php": ">=7|^8"
- },
- "platform-dev": [],
- "platform-overrides": {
- "php": "8.0"
- },
- "plugin-api-version": "2.6.0"
-}
diff --git a/build-phpunit/composer.json b/build-phpunit/composer.json
new file mode 100644
index 000000000..3e4d634fe
--- /dev/null
+++ b/build-phpunit/composer.json
@@ -0,0 +1,6 @@
+{
+ "require-dev": {
+ "wp-phpunit/wp-phpunit": "^6.1",
+ "yoast/phpunit-polyfills": "^1.0"
+ }
+}
diff --git a/codecov.yml b/codecov.yml
new file mode 100644
index 000000000..6327940a7
--- /dev/null
+++ b/codecov.yml
@@ -0,0 +1,35 @@
+# Overall settings for PR integration via codecov.io
+# See https://docs.codecov.com/docs/codecovyml-reference
+
+# Separate PR statuses for project-level and patch-level coverage
+# See https://docs.codecov.com/docs/commit-status
+coverage:
+ status:
+ # Project-level coverage
+ project:
+ default:
+ base: auto
+ # Disable once code base is more mature.
+ informational: true
+ only_pulls: true
+ target: auto
+ threshold: 5%
+
+ # Patch-level coverage (how well is the PR tested)
+ patch:
+ default:
+ base: auto
+ informational: true
+ only_pulls: true
+ target: auto
+ threshold: 50%
+
+# Pull request comments
+# See https://docs.codecov.com/docs/pull-request-comments
+comment: false
+
+# See https://docs.codecov.com/docs/ignoring-paths
+ignore:
+- drop-ins
+- test-content
+- tests
diff --git a/composer.json b/composer.json
index ea14220ae..5d24acd8d 100644
--- a/composer.json
+++ b/composer.json
@@ -11,33 +11,34 @@
"automattic/vipwpcs": "^3.0.0"
},
"require-dev": {
- "wp-phpunit/wp-phpunit": "^6.1",
- "yoast/phpunit-polyfills": "^1.0",
"wp-cli/extension-command": "^2.1",
"wp-cli/wp-cli": "^2.8",
"wp-cli/wp-cli-tests": "^v4.2.2"
},
"scripts": {
- "lint": [
- "composer --working-dir=build-cs install",
- "build-cs/vendor/bin/phpcs --standard=phpcs.xml.dist"
- ],
+ "behat": "BEHAT_FEATURES_FOLDER=tests/behat/features run-behat-tests",
+ "behat-rerun": "BEHAT_FEATURES_FOLDER=tests/behat/features rerun-behat-tests",
+ "prepare-behat-tests": "install-package-tests",
"format": [
- "composer --working-dir=build-cs install",
+ "composer --working-dir=build-cs update --no-interaction",
"build-cs/vendor/bin/phpcbf --standard=phpcs.xml.dist"
],
- "test": "phpunit -c phpunit.xml.dist --verbose",
+ "lint": [
+ "composer --working-dir=build-cs update --no-interaction",
+ "build-cs/vendor/bin/phpcs --standard=phpcs.xml.dist"
+ ],
"phpmd": [
- "composer --working-dir=build-cs install",
+ "composer --working-dir=build-cs update --no-interaction",
"build-cs/vendor/bin/phpmd . text phpmd.xml"
],
"phpstan": [
- "composer --working-dir=build-cs install",
+ "composer --working-dir=build-cs update --no-interaction",
"build-cs/vendor/bin/phpstan analyse --memory-limit=2048M"
],
- "behat": "BEHAT_FEATURES_FOLDER=tests/behat/features run-behat-tests",
- "behat-rerun": "BEHAT_FEATURES_FOLDER=tests/behat/features rerun-behat-tests",
- "prepare-behat-tests": "install-package-tests"
+ "test": [
+ "composer --working-dir=build-phpunit update --no-interaction",
+ "build-phpunit/vendor/bin/phpunit --verbose"
+ ]
},
"scripts-descriptions": {
"lint": "Detect coding standards issues",
@@ -67,7 +68,7 @@
},
"autoload-dev": {
"psr-4": {
- "WordPress\\Plugin_Check\\Test_Data\\": "tests/phpunit/testdata",
+ "WordPress\\Plugin_Check\\Test_Data\\": "tests/phpunit/testdata/Checks",
"WordPress\\Plugin_Check\\Test_Utils\\": "tests/phpunit/utils",
"WordPress\\Plugin_Check\\Behat_Utils\\": "tests/behat/includes"
}
diff --git a/composer.lock b/composer.lock
index e5a2e3761..e94ceecc8 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "5ddf11ee8ead5be7227aff4501ed17e2",
+ "content-hash": "d6efb77e17ac9905f61dc15c9d198fba",
"packages": [
{
"name": "automattic/vipwpcs",
@@ -4078,16 +4078,16 @@
},
{
"name": "wp-cli/wp-cli-tests",
- "version": "v4.2.2",
+ "version": "v4.2.4",
"source": {
"type": "git",
"url": "https://github.com/wp-cli/wp-cli-tests.git",
- "reference": "560ed5ca2776b6b3b66c79a6e6dc62904ae20b3b"
+ "reference": "0601666a81fcf3efcc6eb27ff35babfd82deb66e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/wp-cli/wp-cli-tests/zipball/560ed5ca2776b6b3b66c79a6e6dc62904ae20b3b",
- "reference": "560ed5ca2776b6b3b66c79a6e6dc62904ae20b3b",
+ "url": "https://api.github.com/repos/wp-cli/wp-cli-tests/zipball/0601666a81fcf3efcc6eb27ff35babfd82deb66e",
+ "reference": "0601666a81fcf3efcc6eb27ff35babfd82deb66e",
"shasum": ""
},
"require": {
@@ -4153,7 +4153,7 @@
"issues": "https://github.com/wp-cli/wp-cli-tests/issues",
"source": "https://github.com/wp-cli/wp-cli-tests"
},
- "time": "2023-10-24T07:49:22+00:00"
+ "time": "2023-11-10T12:08:30+00:00"
},
{
"name": "wp-cli/wp-config-transformer",
@@ -4199,54 +4199,6 @@
},
"time": "2023-08-31T10:11:36+00:00"
},
- {
- "name": "wp-phpunit/wp-phpunit",
- "version": "6.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/wp-phpunit/wp-phpunit.git",
- "reference": "4797791a311c41d213027333e4fcc48073f77df0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/4797791a311c41d213027333e4fcc48073f77df0",
- "reference": "4797791a311c41d213027333e4fcc48073f77df0",
- "shasum": ""
- },
- "type": "library",
- "autoload": {
- "files": [
- "__loaded.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "GPL-2.0-or-later"
- ],
- "authors": [
- {
- "name": "Evan Mattson",
- "email": "me@aaemnnost.tv"
- },
- {
- "name": "WordPress Community",
- "homepage": "https://wordpress.org/about/"
- }
- ],
- "description": "WordPress core PHPUnit library",
- "homepage": "https://github.com/wp-phpunit",
- "keywords": [
- "phpunit",
- "test",
- "wordpress"
- ],
- "support": {
- "docs": "https://github.com/wp-phpunit/docs",
- "issues": "https://github.com/wp-phpunit/issues",
- "source": "https://github.com/wp-phpunit/wp-phpunit"
- },
- "time": "2023-08-09T01:26:57+00:00"
- },
{
"name": "yoast/phpunit-polyfills",
"version": "1.1.0",
diff --git a/includes/Checker/Checks/Abstract_PHP_CodeSniffer_Check.php b/includes/Checker/Checks/Abstract_PHP_CodeSniffer_Check.php
index 8fb5dfc76..a9e827f65 100644
--- a/includes/Checker/Checks/Abstract_PHP_CodeSniffer_Check.php
+++ b/includes/Checker/Checks/Abstract_PHP_CodeSniffer_Check.php
@@ -72,7 +72,7 @@ final public function run( Check_Result $result ) {
if ( ! class_exists( '\PHP_CodeSniffer\Runner' ) ) {
throw new Exception(
- __( 'Unable to find Runner class.', 'plugin-check' )
+ __( 'Unable to find PHPCS Runner class.', 'plugin-check' )
);
}
diff --git a/package-lock.json b/package-lock.json
index 9db1cf2ef..0e5935f06 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -5,10 +5,12 @@
"packages": {
"": {
"name": "plugin-check",
+ "hasInstallScript": true,
"license": "GPL-2.0-or-later",
"devDependencies": {
- "@wordpress/env": "^5.7.0",
- "@wordpress/scripts": "^24.6.0"
+ "@wordpress/env": "^8.11.0",
+ "@wordpress/scripts": "^24.6.0",
+ "patch-package": "^8.0.0"
},
"engines": {
"node": ">=16.19.1",
@@ -4187,9 +4189,9 @@
}
},
"node_modules/@wordpress/env": {
- "version": "5.16.0",
- "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-5.16.0.tgz",
- "integrity": "sha512-zx6UO8PuJBrQ34cfeedK1HlGHLFaj7oWzTo9tTt+noB79Ttqc4+a0lYwDqBLLJhlHU+cWgcyOP2lB6TboXH0xA==",
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-8.11.0.tgz",
+ "integrity": "sha512-9zE7HJNW1UenqfME/ao2+1kNrtFbj+jpAipgHwDOnJ+Xkg37mzQ3cb75QQzT/zM7WJ1r1ET4J2b7zbwOImTvAw==",
"dev": true,
"dependencies": {
"chalk": "^4.0.0",
@@ -4474,6 +4476,12 @@
"integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
"dev": true
},
+ "node_modules/@yarnpkg/lockfile": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
+ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
+ "dev": true
+ },
"node_modules/abab": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
@@ -4913,6 +4921,15 @@
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
"dev": true
},
+ "node_modules/at-least-node": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
+ "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4.0.0"
+ }
+ },
"node_modules/autoprefixer": {
"version": "10.4.14",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz",
@@ -8473,6 +8490,15 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/find-yarn-workspace-root": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz",
+ "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==",
+ "dev": true,
+ "dependencies": {
+ "micromatch": "^4.0.2"
+ }
+ },
"node_modules/flat-cache": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
@@ -8602,6 +8628,30 @@
"node": ">=0.10.0"
}
},
+ "node_modules/fs-extra": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
+ "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
+ "dev": true,
+ "dependencies": {
+ "at-least-node": "^1.0.0",
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/fs-extra/node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
"node_modules/fs-monkey": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.4.tgz",
@@ -10824,6 +10874,18 @@
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"dev": true
},
+ "node_modules/json-stable-stringify": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz",
+ "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==",
+ "dev": true,
+ "dependencies": {
+ "jsonify": "^0.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
@@ -10854,6 +10916,36 @@
"integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==",
"dev": true
},
+ "node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
+ "dependencies": {
+ "universalify": "^2.0.0"
+ },
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "node_modules/jsonfile/node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/jsonify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz",
+ "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/jsx-ast-utils": {
"version": "3.3.5",
"resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz",
@@ -10890,6 +10982,15 @@
"node": ">=0.10.0"
}
},
+ "node_modules/klaw-sync": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz",
+ "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.1.11"
+ }
+ },
"node_modules/kleur": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
@@ -12472,6 +12573,165 @@
"tslib": "^2.0.3"
}
},
+ "node_modules/patch-package": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz",
+ "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==",
+ "dev": true,
+ "dependencies": {
+ "@yarnpkg/lockfile": "^1.1.0",
+ "chalk": "^4.1.2",
+ "ci-info": "^3.7.0",
+ "cross-spawn": "^7.0.3",
+ "find-yarn-workspace-root": "^2.0.0",
+ "fs-extra": "^9.0.0",
+ "json-stable-stringify": "^1.0.2",
+ "klaw-sync": "^6.0.0",
+ "minimist": "^1.2.6",
+ "open": "^7.4.2",
+ "rimraf": "^2.6.3",
+ "semver": "^7.5.3",
+ "slash": "^2.0.0",
+ "tmp": "^0.0.33",
+ "yaml": "^2.2.2"
+ },
+ "bin": {
+ "patch-package": "index.js"
+ },
+ "engines": {
+ "node": ">=14",
+ "npm": ">5"
+ }
+ },
+ "node_modules/patch-package/node_modules/cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/patch-package/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/patch-package/node_modules/open": {
+ "version": "7.4.2",
+ "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz",
+ "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==",
+ "dev": true,
+ "dependencies": {
+ "is-docker": "^2.0.0",
+ "is-wsl": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/patch-package/node_modules/rimraf": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ }
+ },
+ "node_modules/patch-package/node_modules/semver": {
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "dev": true,
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/patch-package/node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "dependencies": {
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/patch-package/node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/patch-package/node_modules/slash": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
+ "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/patch-package/node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/patch-package/node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "node_modules/patch-package/node_modules/yaml": {
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz",
+ "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 14"
+ }
+ },
"node_modules/path-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz",
@@ -20091,9 +20351,9 @@
}
},
"@wordpress/env": {
- "version": "5.16.0",
- "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-5.16.0.tgz",
- "integrity": "sha512-zx6UO8PuJBrQ34cfeedK1HlGHLFaj7oWzTo9tTt+noB79Ttqc4+a0lYwDqBLLJhlHU+cWgcyOP2lB6TboXH0xA==",
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-8.11.0.tgz",
+ "integrity": "sha512-9zE7HJNW1UenqfME/ao2+1kNrtFbj+jpAipgHwDOnJ+Xkg37mzQ3cb75QQzT/zM7WJ1r1ET4J2b7zbwOImTvAw==",
"dev": true,
"requires": {
"chalk": "^4.0.0",
@@ -20295,6 +20555,12 @@
"integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
"dev": true
},
+ "@yarnpkg/lockfile": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
+ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
+ "dev": true
+ },
"abab": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
@@ -20618,6 +20884,12 @@
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
"dev": true
},
+ "at-least-node": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
+ "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
+ "dev": true
+ },
"autoprefixer": {
"version": "10.4.14",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz",
@@ -23292,6 +23564,15 @@
"path-exists": "^4.0.0"
}
},
+ "find-yarn-workspace-root": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz",
+ "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==",
+ "dev": true,
+ "requires": {
+ "micromatch": "^4.0.2"
+ }
+ },
"flat-cache": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
@@ -23379,6 +23660,26 @@
"integrity": "sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg==",
"dev": true
},
+ "fs-extra": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
+ "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
+ "dev": true,
+ "requires": {
+ "at-least-node": "^1.0.0",
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "dependencies": {
+ "universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+ "dev": true
+ }
+ }
+ },
"fs-monkey": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.4.tgz",
@@ -25023,6 +25324,15 @@
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"dev": true
},
+ "json-stable-stringify": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz",
+ "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==",
+ "dev": true,
+ "requires": {
+ "jsonify": "^0.0.1"
+ }
+ },
"json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
@@ -25047,6 +25357,30 @@
"integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==",
"dev": true
},
+ "jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6",
+ "universalify": "^2.0.0"
+ },
+ "dependencies": {
+ "universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+ "dev": true
+ }
+ }
+ },
+ "jsonify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz",
+ "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==",
+ "dev": true
+ },
"jsx-ast-utils": {
"version": "3.3.5",
"resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz",
@@ -25077,6 +25411,15 @@
"is-buffer": "^1.1.5"
}
},
+ "klaw-sync": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz",
+ "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.11"
+ }
+ },
"kleur": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
@@ -26293,6 +26636,121 @@
"tslib": "^2.0.3"
}
},
+ "patch-package": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz",
+ "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==",
+ "dev": true,
+ "requires": {
+ "@yarnpkg/lockfile": "^1.1.0",
+ "chalk": "^4.1.2",
+ "ci-info": "^3.7.0",
+ "cross-spawn": "^7.0.3",
+ "find-yarn-workspace-root": "^2.0.0",
+ "fs-extra": "^9.0.0",
+ "json-stable-stringify": "^1.0.2",
+ "klaw-sync": "^6.0.0",
+ "minimist": "^1.2.6",
+ "open": "^7.4.2",
+ "rimraf": "^2.6.3",
+ "semver": "^7.5.3",
+ "slash": "^2.0.0",
+ "tmp": "^0.0.33",
+ "yaml": "^2.2.2"
+ },
+ "dependencies": {
+ "cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "requires": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ }
+ },
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "requires": {
+ "yallist": "^4.0.0"
+ }
+ },
+ "open": {
+ "version": "7.4.2",
+ "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz",
+ "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==",
+ "dev": true,
+ "requires": {
+ "is-docker": "^2.0.0",
+ "is-wsl": "^2.1.1"
+ }
+ },
+ "rimraf": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "semver": {
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "dev": true,
+ "requires": {
+ "lru-cache": "^6.0.0"
+ }
+ },
+ "shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "requires": {
+ "shebang-regex": "^3.0.0"
+ }
+ },
+ "shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true
+ },
+ "slash": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
+ "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==",
+ "dev": true
+ },
+ "which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "yaml": {
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz",
+ "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==",
+ "dev": true
+ }
+ }
+ },
"path-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz",
diff --git a/package.json b/package.json
index 7075a438d..f2801dad6 100644
--- a/package.json
+++ b/package.json
@@ -10,19 +10,23 @@
"npm": ">=8.19.3 <9"
},
"devDependencies": {
- "@wordpress/env": "^5.7.0",
- "@wordpress/scripts": "^24.6.0"
+ "@wordpress/env": "^8.11.0",
+ "@wordpress/scripts": "^24.6.0",
+ "patch-package": "^8.0.0"
},
"scripts": {
+ "postinstall": "patch-package",
"wp-env": "wp-env",
"lint-js": "wp-scripts lint-js",
"format-js": "npm run lint-js -- --fix",
- "prelint-php": "wp-env run composer 'install --no-interaction'",
- "phpstan": "wp-env run composer run-script phpstan",
- "lint-php": "wp-env run composer run-script lint",
- "format-php": "wp-env run composer run-script format",
- "pretest-php": "wp-env run composer 'install --no-interaction'",
- "test-php": "wp-env run phpunit 'phpunit -c /var/www/html/wp-content/plugins/$(basename $(pwd))/phpunit.xml.dist --verbose'",
- "test-php-multisite": "wp-env run phpunit 'WP_MULTISITE=1 phpunit -c /var/www/html/wp-content/plugins/$(basename $(pwd))/tests/phpunit/multisite.xml --verbose'"
+ "phpstan": "wp-env run tests-cli --env-cwd=wp-content/plugins/$(basename $(pwd))/ composer run-script phpstan",
+ "lint-php": "wp-env run tests-cli --env-cwd=wp-content/plugins/$(basename $(pwd))/ composer run-script lint",
+ "format-php": "wp-env run tests-cli --env-cwd=wp-content/plugins/$(basename $(pwd))/ composer run-script format",
+ "pretest-php": "wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) composer install --no-dev; wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) composer dump --dev; wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) composer --working-dir=build-phpunit update --no-interaction",
+ "test-php": "wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) build-phpunit/vendor/bin/phpunit -c phpunit.xml.dist --verbose",
+ "pretest-php-coverage": "wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) composer install --no-dev; wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) composer dump --dev; wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) composer --working-dir=build-phpunit update --no-interaction",
+ "test-php-coverage": "wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) build-phpunit/vendor/bin/phpunit -c phpunit.xml.dist --verbose --coverage-clover build/logs/php-coverage.xml",
+ "test-php-multisite": "wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) build-phpunit/vendor/bin/phpunit -c tests/phpunit/multisite.xml --verbose",
+ "test-php-multisite-coverage": "wp-env run tests-cli --env-cwd=/var/www/html/wp-content/plugins/$(basename $(pwd)) build-phpunit/vendor/bin/phpunit -c tests/phpunit/multisite.xml --verbose --coverage-clover build/logs/php-coverage-multisite.xml"
}
}
diff --git a/patches/@wordpress+env+8.11.0.patch b/patches/@wordpress+env+8.11.0.patch
new file mode 100644
index 000000000..caf3a20ba
--- /dev/null
+++ b/patches/@wordpress+env+8.11.0.patch
@@ -0,0 +1,19 @@
+diff --git a/node_modules/@wordpress/env/lib/init-config.js b/node_modules/@wordpress/env/lib/init-config.js
+index 318bcae..8628137 100644
+--- a/node_modules/@wordpress/env/lib/init-config.js
++++ b/node_modules/@wordpress/env/lib/init-config.js
+@@ -244,14 +244,6 @@ RUN export COMPOSER_HASH=\`curl -sS https://composer.github.io/installer.sig\` &
+ RUN php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer
+ RUN rm /tmp/composer-setup.php`;
+
+- // Install any Composer packages we might need globally.
+- // Make sure to do this as the user and ensure the binaries are available in the $PATH.
+- dockerFileContent += `
+-USER $HOST_UID:$HOST_GID
+-ENV PATH="\${PATH}:/home/$HOST_USERNAME/.composer/vendor/bin"
+-RUN composer global require --dev phpunit/phpunit:"^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0"
+-USER root`;
+-
+ return dockerFileContent;
+ }
+
diff --git a/phpcs.xml.dist b/phpcs.xml.dist
index f0f29587c..a370263f8 100644
--- a/phpcs.xml.dist
+++ b/phpcs.xml.dist
@@ -60,10 +60,10 @@
- tests/utils/*
+ tests/phpunit/utils/*
- tests/utils/*
+ tests/phpunit/utils/*
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 7cfe43b57..e868b35e8 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -6,10 +6,15 @@
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
>
+
+
+ includes/
+ plugin-check.php
+
+
- ./tests/phpunit
- ./tests/phpunit/testdata/plugins/*
+ ./tests/phpunit/tests
@@ -17,4 +22,10 @@
ms-required
+
+
+ includes/
+ plugin-check.php
+
+
diff --git a/tests/phpunit/bootstrap.php b/tests/phpunit/bootstrap.php
index 144317c78..734c39da4 100644
--- a/tests/phpunit/bootstrap.php
+++ b/tests/phpunit/bootstrap.php
@@ -8,6 +8,10 @@
define( 'TESTS_PLUGIN_DIR', dirname( __DIR__, 2 ) );
define( 'UNIT_TESTS_PLUGIN_DIR', TESTS_PLUGIN_DIR . '/tests/phpunit/testdata/plugins/' );
+if ( file_exists( TESTS_PLUGIN_DIR . '/build-phpunit/vendor/autoload.php' ) ) {
+ require_once TESTS_PLUGIN_DIR . '/build-phpunit/vendor/autoload.php';
+}
+
if ( file_exists( TESTS_PLUGIN_DIR . '/vendor/autoload.php' ) ) {
require_once TESTS_PLUGIN_DIR . '/vendor/autoload.php';
}
diff --git a/tests/phpunit/multisite.xml b/tests/phpunit/multisite.xml
index 3c1fcdad7..93a232128 100644
--- a/tests/phpunit/multisite.xml
+++ b/tests/phpunit/multisite.xml
@@ -6,10 +6,18 @@
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
>
+
+
+
+
+
+ ../../includes/
+ ../../plugin-check.php
+
+
- ./
- ./testdata/plugins/*
+ ./tests
@@ -17,4 +25,10 @@
ms-excluded
+
+
+ ../../includes/
+ ../../plugin-check.php
+
+
diff --git a/tests/phpunit/Admin/Admin_AJAX_Tests.php b/tests/phpunit/tests/Admin/Admin_AJAX_Tests.php
similarity index 100%
rename from tests/phpunit/Admin/Admin_AJAX_Tests.php
rename to tests/phpunit/tests/Admin/Admin_AJAX_Tests.php
diff --git a/tests/phpunit/Admin/Admin_Page_Tests.php b/tests/phpunit/tests/Admin/Admin_Page_Tests.php
similarity index 100%
rename from tests/phpunit/Admin/Admin_Page_Tests.php
rename to tests/phpunit/tests/Admin/Admin_Page_Tests.php
diff --git a/tests/phpunit/Checker/AJAX_Runner_Tests.php b/tests/phpunit/tests/Checker/AJAX_Runner_Tests.php
similarity index 99%
rename from tests/phpunit/Checker/AJAX_Runner_Tests.php
rename to tests/phpunit/tests/Checker/AJAX_Runner_Tests.php
index d60781fab..a8c530ffa 100644
--- a/tests/phpunit/Checker/AJAX_Runner_Tests.php
+++ b/tests/phpunit/tests/Checker/AJAX_Runner_Tests.php
@@ -84,7 +84,7 @@ function ( $checks ) {
$this->assertIsCallable( $cleanup );
- // Assert the Universal_Runtume_Preparation was run.
+ // Assert the Universal_Runtime_Preparation was run.
$this->assertTrue( has_filter( 'option_active_plugins' ) );
$this->assertTrue( has_filter( 'default_option_active_plugins' ) );
$this->assertTrue( has_filter( 'stylesheet' ) );
diff --git a/tests/phpunit/Checker/CLI_Runner_Tests.php b/tests/phpunit/tests/Checker/CLI_Runner_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/CLI_Runner_Tests.php
rename to tests/phpunit/tests/Checker/CLI_Runner_Tests.php
diff --git a/tests/phpunit/Checker/Check_Categories_Tests.php b/tests/phpunit/tests/Checker/Check_Categories_Tests.php
similarity index 98%
rename from tests/phpunit/Checker/Check_Categories_Tests.php
rename to tests/phpunit/tests/Checker/Check_Categories_Tests.php
index f4d96f316..017c28667 100644
--- a/tests/phpunit/Checker/Check_Categories_Tests.php
+++ b/tests/phpunit/tests/Checker/Check_Categories_Tests.php
@@ -16,6 +16,10 @@
use WordPress\Plugin_Check\Test_Data\Category_Check_Two;
class Check_Categories_Tests extends WP_UnitTestCase {
+ /**
+ * @var Default_Check_Repository
+ */
+ protected $repository;
public function set_up() {
parent::set_up();
diff --git a/tests/phpunit/Checker/Check_Context_Tests.php b/tests/phpunit/tests/Checker/Check_Context_Tests.php
similarity index 91%
rename from tests/phpunit/Checker/Check_Context_Tests.php
rename to tests/phpunit/tests/Checker/Check_Context_Tests.php
index a5c893bdc..ad6046d5b 100644
--- a/tests/phpunit/Checker/Check_Context_Tests.php
+++ b/tests/phpunit/tests/Checker/Check_Context_Tests.php
@@ -8,6 +8,16 @@
use WordPress\Plugin_Check\Checker\Check_Context;
class Check_Context_Tests extends WP_UnitTestCase {
+ /**
+ * @var string
+ */
+ protected $plugin_name;
+
+ /**
+ * @var Check_Context
+ */
+ protected $check_context;
+
public function set_up() {
parent::set_up();
diff --git a/tests/phpunit/Checker/Check_Result_Tests.php b/tests/phpunit/tests/Checker/Check_Result_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Check_Result_Tests.php
rename to tests/phpunit/tests/Checker/Check_Result_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Code_Obfuscation_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Code_Obfuscation_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Code_Obfuscation_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Code_Obfuscation_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Enqueued_Scripts_In_Footer_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Enqueued_Scripts_In_Footer_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Enqueued_Scripts_In_Footer_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Enqueued_Scripts_In_Footer_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Enqueued_Scripts_Size_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Enqueued_Scripts_Size_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Enqueued_Scripts_Size_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Enqueued_Scripts_Size_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Enqueued_Styles_Scope_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Enqueued_Styles_Scope_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Enqueued_Styles_Scope_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Enqueued_Styles_Scope_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/File_Type_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/File_Type_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/File_Type_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/File_Type_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/I18n_Usage_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/I18n_Usage_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/I18n_Usage_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/I18n_Usage_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Late_Escaping_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Late_Escaping_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Late_Escaping_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Late_Escaping_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Localhost_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Localhost_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Localhost_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Localhost_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/No_Unfiltered_Uploads_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/No_Unfiltered_Uploads_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/No_Unfiltered_Uploads_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/No_Unfiltered_Uploads_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Performant_WP_Query_Params_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Performant_WP_Query_Params_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Performant_WP_Query_Params_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Performant_WP_Query_Params_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Plugin_Header_Text_Domain_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Plugin_Header_Text_Domain_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Plugin_Header_Text_Domain_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Plugin_Header_Text_Domain_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Plugin_Readme_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Plugin_Readme_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Plugin_Readme_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Plugin_Readme_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Plugin_Review_PHPCS_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Plugin_Review_PHPCS_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Plugin_Review_PHPCS_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Plugin_Review_PHPCS_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Plugin_Updater_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Plugin_Updater_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Plugin_Updater_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Plugin_Updater_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks/Trademarks_Check_Tests.php b/tests/phpunit/tests/Checker/Checks/Trademarks_Check_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks/Trademarks_Check_Tests.php
rename to tests/phpunit/tests/Checker/Checks/Trademarks_Check_Tests.php
diff --git a/tests/phpunit/Checker/Checks_Tests.php b/tests/phpunit/tests/Checker/Checks_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Checks_Tests.php
rename to tests/phpunit/tests/Checker/Checks_Tests.php
diff --git a/tests/phpunit/Checker/Default_Check_Collection_Tests.php b/tests/phpunit/tests/Checker/Default_Check_Collection_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Default_Check_Collection_Tests.php
rename to tests/phpunit/tests/Checker/Default_Check_Collection_Tests.php
diff --git a/tests/phpunit/Checker/Default_Check_Repository_Tests.php b/tests/phpunit/tests/Checker/Default_Check_Repository_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Default_Check_Repository_Tests.php
rename to tests/phpunit/tests/Checker/Default_Check_Repository_Tests.php
diff --git a/tests/phpunit/Checker/Preparations/Demo_Posts_Creation_Preparation_Tests.php b/tests/phpunit/tests/Checker/Preparations/Demo_Posts_Creation_Preparation_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Preparations/Demo_Posts_Creation_Preparation_Tests.php
rename to tests/phpunit/tests/Checker/Preparations/Demo_Posts_Creation_Preparation_Tests.php
diff --git a/tests/phpunit/Checker/Preparations/Force_Single_Plugin_Preparation_Tests.php b/tests/phpunit/tests/Checker/Preparations/Force_Single_Plugin_Preparation_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Preparations/Force_Single_Plugin_Preparation_Tests.php
rename to tests/phpunit/tests/Checker/Preparations/Force_Single_Plugin_Preparation_Tests.php
diff --git a/tests/phpunit/Checker/Preparations/Universal_Runtime_Preparation_Tests.php b/tests/phpunit/tests/Checker/Preparations/Universal_Runtime_Preparation_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Preparations/Universal_Runtime_Preparation_Tests.php
rename to tests/phpunit/tests/Checker/Preparations/Universal_Runtime_Preparation_Tests.php
diff --git a/tests/phpunit/Checker/Preparations/Use_Minimal_Theme_Preparation_Tests.php b/tests/phpunit/tests/Checker/Preparations/Use_Minimal_Theme_Preparation_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Preparations/Use_Minimal_Theme_Preparation_Tests.php
rename to tests/phpunit/tests/Checker/Preparations/Use_Minimal_Theme_Preparation_Tests.php
diff --git a/tests/phpunit/Checker/Runtime_Environment_Setup_Tests.php b/tests/phpunit/tests/Checker/Runtime_Environment_Setup_Tests.php
similarity index 100%
rename from tests/phpunit/Checker/Runtime_Environment_Setup_Tests.php
rename to tests/phpunit/tests/Checker/Runtime_Environment_Setup_Tests.php
diff --git a/tests/phpunit/Plugin_Context_Tests.php b/tests/phpunit/tests/Plugin_Context_Tests.php
similarity index 93%
rename from tests/phpunit/Plugin_Context_Tests.php
rename to tests/phpunit/tests/Plugin_Context_Tests.php
index 0b03c98b5..688124481 100644
--- a/tests/phpunit/Plugin_Context_Tests.php
+++ b/tests/phpunit/tests/Plugin_Context_Tests.php
@@ -8,6 +8,16 @@
use WordPress\Plugin_Check\Plugin_Context;
class Plugin_Context_Tests extends WP_UnitTestCase {
+ /**
+ * @var string
+ */
+ protected $plugin_name;
+
+ /**
+ * @var Plugin_Context
+ */
+ protected $plugin_context;
+
public function set_up() {
parent::set_up();
diff --git a/tests/phpunit/Plugin_Main_Tests.php b/tests/phpunit/tests/Plugin_Main_Tests.php
similarity index 100%
rename from tests/phpunit/Plugin_Main_Tests.php
rename to tests/phpunit/tests/Plugin_Main_Tests.php
diff --git a/tests/phpunit/Utilities/Plugin_Request_Utility_Tests.php b/tests/phpunit/tests/Utilities/Plugin_Request_Utility_Tests.php
similarity index 100%
rename from tests/phpunit/Utilities/Plugin_Request_Utility_Tests.php
rename to tests/phpunit/tests/Utilities/Plugin_Request_Utility_Tests.php
diff --git a/tests/phpunit/utils/Traits/With_Mock_Filesystem.php b/tests/phpunit/utils/Traits/With_Mock_Filesystem.php
index f68b04c6b..f4b338bfe 100644
--- a/tests/phpunit/utils/Traits/With_Mock_Filesystem.php
+++ b/tests/phpunit/utils/Traits/With_Mock_Filesystem.php
@@ -19,7 +19,7 @@ protected function set_up_mock_filesystem() {
add_filter(
'filesystem_method_file',
function () {
- return TESTS_PLUGIN_DIR . '/testdata/Filesystem/WP_Filesystem_MockFilesystem.php';
+ return TESTS_PLUGIN_DIR . '/tests/phpunit/testdata/Filesystem/WP_Filesystem_MockFilesystem.php';
}
);
add_filter(
@@ -32,7 +32,7 @@ function () {
WP_Filesystem();
// Simulate that the original object-cache.copy.php file exists.
- $wp_filesystem->put_contents( WP_PLUGIN_CHECK_PLUGIN_DIR_PATH . 'drop-ins/object-cache.copy.php', file_get_contents( WP_PLUGIN_CHECK_PLUGIN_DIR_PATH . 'drop-ins/object-cache.copy.php' ) );
+ $wp_filesystem->put_contents( TESTS_PLUGIN_DIR . '/drop-ins/object-cache.copy.php', file_get_contents( TESTS_PLUGIN_DIR . '/drop-ins/object-cache.copy.php' ) );
}
/**
@@ -46,7 +46,7 @@ protected function set_up_failing_mock_filesystem() {
add_filter(
'filesystem_method_file',
function () {
- return TESTS_PLUGIN_DIR . '/testdata/Filesystem/WP_Filesystem_FailingMockFilesystem.php';
+ return TESTS_PLUGIN_DIR . '/tests/phpunit/testdata/Filesystem/WP_Filesystem_FailingMockFilesystem.php';
}
);
add_filter(
@@ -59,6 +59,6 @@ function () {
WP_Filesystem();
// Simulate that the original object-cache.copy.php file exists.
- $wp_filesystem->put_contents( WP_PLUGIN_CHECK_PLUGIN_DIR_PATH . 'drop-ins/object-cache.copy.php', file_get_contents( WP_PLUGIN_CHECK_PLUGIN_DIR_PATH . 'drop-ins/object-cache.copy.php' ) );
+ $wp_filesystem->put_contents( TESTS_PLUGIN_DIR . '/drop-ins/object-cache.copy.php', file_get_contents( TESTS_PLUGIN_DIR . '/drop-ins/object-cache.copy.php' ) );
}
}