From 2acb95f72beeac8296c920d4e49c3ac80c76f590 Mon Sep 17 00:00:00 2001 From: Steel Wagstaff Date: Tue, 23 Nov 2021 14:44:38 -0800 Subject: [PATCH 01/27] chore: update coding standards, fix tests (#880) * Update coding standards, initial fixes, improve CI pipeline, add additional PHPUnit configuration file --- .github/dependabot.yml | 8 +- .github/workflows/.pipeline.yml | 32 +- comments.php | 2 +- composer.json | 12 +- composer.lock | 479 +++++++++++++++++++++---- inc/actions/namespace.php | 7 +- inc/helpers/namespace.php | 4 +- page-about.php | 4 +- page-buy.php | 2 +- page-cover.php | 1 + partials/content-cover-book-header.php | 21 +- partials/content-cover-book-info.php | 51 +-- partials/content-cover-metadata.php | 1 + partials/content-cover-toc.php | 2 +- phpcs.ruleset.xml | 8 +- phpunit9.xml | 16 + single.php | 1 + tests/test-actions.php | 2 +- tests/test-helpers.php | 8 +- 19 files changed, 519 insertions(+), 142 deletions(-) create mode 100644 phpunit9.xml diff --git a/.github/dependabot.yml b/.github/dependabot.yml index b189cedf4..46c1469a0 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -6,7 +6,7 @@ updates: directory: "/" # Check for updates monthly schedule: - interval: "monthly" + interval: "daily" allow: # Allow direct updates only (for packages named in package.json) - dependency-type: "direct" @@ -19,7 +19,7 @@ updates: directory: "/packages/aetna" # Check for updates monthly schedule: - interval: "monthly" + interval: "daily" allow: # Allow direct updates only (for packages named in package.json) - dependency-type: "direct" @@ -32,7 +32,7 @@ updates: directory: "/packages/buckram" # Check for updates monthly schedule: - interval: "monthly" + interval: "daily" allow: # Allow direct updates only (for packages named in package.json) - dependency-type: "direct" @@ -45,7 +45,7 @@ updates: directory: "/" # Check for updates monthly schedule: - interval: "monthly" + interval: "daily" allow: # Allow direct updates only (for packages named in composer.json) - dependency-type: "direct" diff --git a/.github/workflows/.pipeline.yml b/.github/workflows/.pipeline.yml index 536aeb482..0feffa9e4 100644 --- a/.github/workflows/.pipeline.yml +++ b/.github/workflows/.pipeline.yml @@ -15,13 +15,17 @@ jobs: matrix: php: [ 7.3 ] os: [ ubuntu-18.04 ] - wordpress: [5.8.1, latest] + wordpress: [ 5.8.2 ] experimental: [false] include: - php: 7.4 os: ubuntu-20.04 wordpress: latest experimental: true + - php: 7.4 + os: ubuntu-20.04 + wordpress: 'trunk' + experimental: true name: Test - PHP ${{ matrix.php }} - WP ${{ matrix.wordpress }} env: @@ -76,35 +80,41 @@ jobs: run: | export PATH="$HOME/.composer/vendor/bin:$PATH" composer install --no-interaction - composer global require "phpunit/phpunit:7.5.20" - composer require --dev yoast/phpunit-polyfills - name: Run Lint run: npm run lint if: matrix.experimental == false + - name: Run Frontend Tests + run: | + npm run test + lerna run test + if: matrix.experimental == false + - name: Run PHP CodeSniffer run: composer standards - name: Install WP tests run: bash bin/install-wp-tests.sh wordpress_test root root localhost ${{ matrix.wordpress }} - - name: Run Coverage + - name: Run PHP Tests and PCOV run: composer require pcov/clobber; vendor/bin/pcov clobber; vendor/bin/phpunit --configuration phpunit.xml --coverage-clover coverage.xml if: matrix.experimental == false - - name: Run Frontend Tests - run: | - npm run test - lerna run test + - name: Upload Coverage to Codecov + run: bash <(curl -s https://codecov.io/bash) if: matrix.experimental == false - name: Run PHP Tests run: composer test + if: matrix.experimental == true && matrix.wordpress != 'trunk' - - name: Upload Coverage to Codecov - run: bash <(curl -s https://codecov.io/bash) - if: matrix.experimental == false + - name: Run PHP Tests with PHPUnit 9 + run: | + composer remove --dev phpunit/phpunit + composer update --dev yoast/phpunit-polyfills --with-dependencies --ignore-platform-reqs + vendor/bin/phpunit --configuration phpunit9.xml + if: matrix.experimental == true && matrix.wordpress == 'trunk' - name: Prepare Build if: startsWith(github.ref, 'refs/tags/') diff --git a/comments.php b/comments.php index 7966d167d..e1deb655d 100644 --- a/comments.php +++ b/comments.php @@ -14,7 +14,7 @@

=5.6", + "squizlabs/php_codesniffer": "^3.3.1", + "wp-coding-standards/wpcs": "^2.1" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.5", + "phpcompatibility/php-compatibility": "^9", + "phpunit/phpunit": "^5 || ^6 || ^7" + }, + "suggest": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically." + }, + "type": "phpcodesniffer-standard", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Contributors", + "homepage": "https://github.com/Automattic/VIP-Coding-Standards/graphs/contributors" + } + ], + "description": "PHP_CodeSniffer rules (sniffs) to enforce WordPress VIP minimum coding conventions", + "keywords": [ + "phpcs", + "standards", + "wordpress" + ], + "time": "2019-07-12T08:47:36+00:00" + }, + { + "name": "dealerdirect/phpcodesniffer-composer-installer", + "version": "v0.7.1", + "source": { + "type": "git", + "url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git", + "reference": "fe390591e0241955f22eb9ba327d137e501c771c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/fe390591e0241955f22eb9ba327d137e501c771c", + "reference": "fe390591e0241955f22eb9ba327d137e501c771c", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0 || ^2.0", + "php": ">=5.3", + "squizlabs/php_codesniffer": "^2.0 || ^3.0 || ^4.0" + }, + "require-dev": { + "composer/composer": "*", + "phpcompatibility/php-compatibility": "^9.0", + "sensiolabs/security-checker": "^4.1.0" + }, + "type": "composer-plugin", + "extra": { + "class": "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin" + }, + "autoload": { + "psr-4": { + "Dealerdirect\\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" + } + ], + "description": "PHP_CodeSniffer Standards Composer Installer Plugin", + "homepage": "http://www.dealerdirect.com", + "keywords": [ + "PHPCodeSniffer", + "PHP_CodeSniffer", + "code quality", + "codesniffer", + "composer", + "installer", + "phpcs", + "plugin", + "qa", + "quality", + "standard", + "standards", + "style guide", + "stylecheck", + "tests" + ], + "time": "2020-12-07T18:04:37+00:00" + }, { "name": "doctrine/instantiator", "version": "1.4.0", @@ -305,16 +417,16 @@ }, { "name": "fig-r/psr2r-sniffer", - "version": "0.5.0", + "version": "0.5.2", "source": { "type": "git", "url": "https://github.com/php-fig-rectified/psr2r-sniffer.git", - "reference": "ff4659fdb1ce8832a9e408a6e22aa05bc93efe10" + "reference": "7eb462bcf19abcae122855a6d79cc8f768c77880" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig-rectified/psr2r-sniffer/zipball/ff4659fdb1ce8832a9e408a6e22aa05bc93efe10", - "reference": "ff4659fdb1ce8832a9e408a6e22aa05bc93efe10", + "url": "https://api.github.com/repos/php-fig-rectified/psr2r-sniffer/zipball/7eb462bcf19abcae122855a6d79cc8f768c77880", + "reference": "7eb462bcf19abcae122855a6d79cc8f768c77880", "shasum": "" }, "require": { @@ -347,37 +459,41 @@ "codesniffer", "cs" ], - "time": "2017-08-30T10:00:39+00:00" + "time": "2019-07-30T11:13:07+00:00" }, { "name": "humanmade/coding-standards", - "version": "v0.5.0", + "version": "v1.1.3", "source": { "type": "git", "url": "https://github.com/humanmade/coding-standards.git", - "reference": "b35747249bcc727a9eff22f746aaf9758d8a90ce" + "reference": "6efe4b8fd33c22f06febc658c805acdc1e4d94f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/humanmade/coding-standards/zipball/b35747249bcc727a9eff22f746aaf9758d8a90ce", - "reference": "b35747249bcc727a9eff22f746aaf9758d8a90ce", + "url": "https://api.github.com/repos/humanmade/coding-standards/zipball/6efe4b8fd33c22f06febc658c805acdc1e4d94f5", + "reference": "6efe4b8fd33c22f06febc658c805acdc1e4d94f5", "shasum": "" }, "require": { + "automattic/vipwpcs": "2.0.0", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", "fig-r/psr2r-sniffer": "^0.5.0", - "squizlabs/php_codesniffer": "^3.1", - "wp-coding-standards/wpcs": "^0.14.0" + "php": ">=7.1", + "phpcompatibility/phpcompatibility-wp": "^2.0.0", + "squizlabs/php_codesniffer": "~3.5.0", + "wp-coding-standards/wpcs": "2.2.1" }, "require-dev": { "phpunit/phpunit": "^5.7" }, - "type": "project", + "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", "license": [ "GPL-2.0-or-later" ], - "description": "Human Made coding standards", - "time": "2018-05-22T13:24:47+00:00" + "description": "Human Made Coding Standards", + "time": "2021-02-03T22:20:56+00:00" }, { "name": "myclabs/deep-copy", @@ -535,6 +651,166 @@ "description": "Library for handling version information and constraints", "time": "2018-07-08T19:19:57+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" + ], + "time": "2019-12-27T09:44:58+00:00" + }, + { + "name": "phpcompatibility/phpcompatibility-paragonie", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git", + "reference": "ddabec839cc003651f2ce695c938686d1086cf43" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/ddabec839cc003651f2ce695c938686d1086cf43", + "reference": "ddabec839cc003651f2ce695c938686d1086cf43", + "shasum": "" + }, + "require": { + "phpcompatibility/php-compatibility": "^9.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7", + "paragonie/random_compat": "dev-master", + "paragonie/sodium_compat": "dev-master" + }, + "suggest": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer '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", + "role": "lead" + }, + { + "name": "Juliette Reinders Folmer", + "role": "lead" + } + ], + "description": "A set of rulesets for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by the Paragonie polyfill libraries.", + "homepage": "http://phpcompatibility.com/", + "keywords": [ + "compatibility", + "paragonie", + "phpcs", + "polyfill", + "standards" + ], + "time": "2021-02-15T10:24:51+00:00" + }, + { + "name": "phpcompatibility/phpcompatibility-wp", + "version": "2.1.2", + "source": { + "type": "git", + "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git", + "reference": "a792ab623069f0ce971b2417edef8d9632e32f75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/a792ab623069f0ce971b2417edef8d9632e32f75", + "reference": "a792ab623069f0ce971b2417edef8d9632e32f75", + "shasum": "" + }, + "require": { + "phpcompatibility/php-compatibility": "^9.0", + "phpcompatibility/phpcompatibility-paragonie": "^1.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7" + }, + "suggest": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer '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", + "role": "lead" + }, + { + "name": "Juliette Reinders Folmer", + "role": "lead" + } + ], + "description": "A ruleset for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by WordPress.", + "homepage": "http://phpcompatibility.com/", + "keywords": [ + "compatibility", + "phpcs", + "standards", + "wordpress" + ], + "time": "2021-07-21T11:09:57+00:00" + }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -586,16 +862,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.2.2", + "version": "5.3.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", "shasum": "" }, "require": { @@ -606,7 +882,8 @@ "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.2" + "mockery/mockery": "~1.3.2", + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -634,20 +911,20 @@ } ], "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2020-09-03T19:13:55+00:00" + "time": "2021-10-19T17:43:47+00:00" }, { "name": "phpdocumentor/type-resolver", - "version": "1.4.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" + "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae", + "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae", "shasum": "" }, "require": { @@ -655,7 +932,8 @@ "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { - "ext-tokenizer": "*" + "ext-tokenizer": "*", + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -679,37 +957,37 @@ } ], "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "time": "2020-09-17T18:55:26+00:00" + "time": "2021-10-02T14:08:47+00:00" }, { "name": "phpspec/prophecy", - "version": "1.13.0", + "version": "1.14.0", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea" + "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/be1996ed8adc35c3fd795488a653f4b518be70ea", - "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", + "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", "shasum": "" }, "require": { "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.1", + "php": "^7.2 || ~8.0, <8.2", "phpdocumentor/reflection-docblock": "^5.2", "sebastian/comparator": "^3.0 || ^4.0", "sebastian/recursion-context": "^3.0 || ^4.0" }, "require-dev": { - "phpspec/phpspec": "^6.0", + "phpspec/phpspec": "^6.0 || ^7.0", "phpunit/phpunit": "^8.0 || ^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.11.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { @@ -742,7 +1020,7 @@ "spy", "stub" ], - "time": "2021-03-17T13:42:18+00:00" + "time": "2021-09-10T09:02:12+00:00" }, { "name": "phpunit/php-code-coverage", @@ -1101,32 +1379,31 @@ }, { "name": "pressbooks/coding-standards", - "version": "1.0.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/pressbooks/coding-standards.git", - "reference": "2c41415fd7eb121d871364bf1e460f724024758c" + "reference": "e332af77b246b088c5320934296746c1033a98cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pressbooks/coding-standards/zipball/2c41415fd7eb121d871364bf1e460f724024758c", - "reference": "2c41415fd7eb121d871364bf1e460f724024758c", + "url": "https://api.github.com/repos/pressbooks/coding-standards/zipball/e332af77b246b088c5320934296746c1033a98cb", + "reference": "e332af77b246b088c5320934296746c1033a98cb", "shasum": "" }, "require": { - "fig-r/psr2r-sniffer": "0.5.0", - "humanmade/coding-standards": "0.5.0", - "squizlabs/php_codesniffer": "3.3.2" + "humanmade/coding-standards": "^1.0", + "squizlabs/php_codesniffer": "^3.5" }, "require-dev": { - "phpunit/phpunit": "6.5.13" + "phpunit/phpunit": "^7.0" }, "type": "project", "notification-url": "https://packagist.org/downloads/", "license": [ "GPL-3.0-or-later" ], - "time": "2018-12-14T16:09:42+00:00" + "time": "2021-08-09T16:26:32+00:00" }, { "name": "psr/container", @@ -1416,16 +1693,16 @@ }, { "name": "sebastian/exporter", - "version": "3.1.3", + "version": "3.1.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "6b853149eab67d4da22291d36f5b0631c0fd856e" + "reference": "0c32ea2e40dbf59de29f3b49bf375176ce7dd8db" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/6b853149eab67d4da22291d36f5b0631c0fd856e", - "reference": "6b853149eab67d4da22291d36f5b0631c0fd856e", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/0c32ea2e40dbf59de29f3b49bf375176ce7dd8db", + "reference": "0c32ea2e40dbf59de29f3b49bf375176ce7dd8db", "shasum": "" }, "require": { @@ -1434,7 +1711,7 @@ }, "require-dev": { "ext-mbstring": "*", - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^8.5" }, "type": "library", "extra": { @@ -1485,7 +1762,7 @@ "type": "github" } ], - "time": "2020-11-30T07:47:53+00:00" + "time": "2021-11-11T13:51:24+00:00" }, { "name": "sebastian/global-state", @@ -1794,16 +2071,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.3.2", + "version": "3.5.8", "source": { "type": "git", "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", - "reference": "6ad28354c04b364c3c71a34e4a18b629cc3b231e" + "reference": "9d583721a7157ee997f235f327de038e7ea6dac4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/6ad28354c04b364c3c71a34e4a18b629cc3b231e", - "reference": "6ad28354c04b364c3c71a34e4a18b629cc3b231e", + "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/9d583721a7157ee997f235f327de038e7ea6dac4", + "reference": "9d583721a7157ee997f235f327de038e7ea6dac4", "shasum": "" }, "require": { @@ -1836,12 +2113,12 @@ } ], "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.", - "homepage": "http://www.squizlabs.com/php-codesniffer", + "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", "keywords": [ "phpcs", "standards" ], - "time": "2018-09-23T23:08:17+00:00" + "time": "2020-10-23T02:01:07+00:00" }, { "name": "symfony/console", @@ -2629,16 +2906,16 @@ }, { "name": "theseer/tokenizer", - "version": "1.2.0", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "75a63c33a8577608444246075ea0af0d052e452a" + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", - "reference": "75a63c33a8577608444246075ea0af0d052e452a", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", "shasum": "" }, "require": { @@ -2671,7 +2948,7 @@ "type": "github" } ], - "time": "2020-07-12T23:59:07+00:00" + "time": "2021-07-28T10:34:58+00:00" }, { "name": "webmozart/assert", @@ -2729,24 +3006,29 @@ }, { "name": "wp-coding-standards/wpcs", - "version": "0.14.1", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress-Coding-Standards.git", - "reference": "cf6b310caad735816caef7573295f8a534374706" + "reference": "b5a453203114cc2284b1a614c4953456fbe4f546" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/cf6b310caad735816caef7573295f8a534374706", - "reference": "cf6b310caad735816caef7573295f8a534374706", + "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/b5a453203114cc2284b1a614c4953456fbe4f546", + "reference": "b5a453203114cc2284b1a614c4953456fbe4f546", "shasum": "" }, "require": { - "php": ">=5.3", - "squizlabs/php_codesniffer": "^2.9.0 || ^3.0.2" + "php": ">=5.4", + "squizlabs/php_codesniffer": "^3.3.1" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || ^0.6", + "phpcompatibility/php-compatibility": "^9.0", + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.4.3" + "dealerdirect/phpcodesniffer-composer-installer": "^0.6 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically." }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -2756,7 +3038,7 @@ "authors": [ { "name": "Contributors", - "homepage": "https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/graphs/contributors" + "homepage": "https://github.com/WordPress/WordPress-Coding-Standards/graphs/contributors" } ], "description": "PHP_CodeSniffer rules (sniffs) to enforce WordPress coding conventions", @@ -2765,7 +3047,7 @@ "standards", "wordpress" ], - "time": "2018-02-16T01:57:48+00:00" + "time": "2020-02-04T02:52:06+00:00" }, { "name": "wpreadme2markdown/wp2md", @@ -2866,6 +3148,63 @@ "wordpress" ], "time": "2020-08-07T00:24:42+00:00" + }, + { + "name": "yoast/phpunit-polyfills", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", + "reference": "1a582ab1d91e86aa450340c4d35631a85314ff9f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/1a582ab1d91e86aa450340c4d35631a85314ff9f", + "reference": "1a582ab1d91e86aa450340c4d35631a85314ff9f", + "shasum": "" + }, + "require": { + "php": ">=5.4", + "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + }, + "require-dev": { + "yoast/yoastcs": "^2.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev", + "dev-develop": "1.x-dev" + } + }, + "autoload": { + "files": [ + "phpunitpolyfills-autoload.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Team Yoast", + "email": "support@yoast.com", + "homepage": "https://yoast.com" + }, + { + "name": "Contributors", + "homepage": "https://github.com/Yoast/PHPUnit-Polyfills/graphs/contributors" + } + ], + "description": "Set of polyfills for changed PHPUnit functionality to allow for creating PHPUnit cross-version compatible tests", + "homepage": "https://github.com/Yoast/PHPUnit-Polyfills", + "keywords": [ + "phpunit", + "polyfill", + "testing" + ], + "time": "2021-10-03T08:40:26+00:00" } ], "aliases": [], diff --git a/inc/actions/namespace.php b/inc/actions/namespace.php index d8febe5a5..4a11c7a27 100644 --- a/inc/actions/namespace.php +++ b/inc/actions/namespace.php @@ -253,17 +253,16 @@ function render_lightbox_setting_field( $args ) { * @return void */ function text_diff() { - if ( check_ajax_referer( 'text_diff_nonce', 'security' ) ) { + if ( check_ajax_referer( 'text_diff_nonce', 'security' && ! empty( $_POST['left'] ) && ! empty( $_POST['right'] ) ) ) { $diff = wp_text_diff( - $_POST['left'], - $_POST['right'] + wp_unslash( $_POST['left'] ), + wp_unslash( $_POST['right'] ) ); wp_send_json_success( wp_json_encode( $diff ) ); } wp_send_json_error(); } - /** * Suppress Media Attachment pages. This code redirects bots, unprivileged users, away from the attachment page. * diff --git a/inc/helpers/namespace.php b/inc/helpers/namespace.php index 949001c7e..0cd62cbc5 100644 --- a/inc/helpers/namespace.php +++ b/inc/helpers/namespace.php @@ -671,7 +671,6 @@ function do_license( $metadata ) { return ''; } - /** * Determine if the book is using a modern version of Buckram. * @@ -691,8 +690,7 @@ function is_buckram() { * Results are cached for 1 hour * * @return array - *@since 2.9.2 - * + * @since 2.9.2 */ function get_h5p_activities( $per_page = 20 ) { global $wpdb; diff --git a/page-about.php b/page-about.php index 82950230c..024e64f45 100644 --- a/page-about.php +++ b/page-about.php @@ -10,11 +10,11 @@ - + - + diff --git a/page-buy.php b/page-buy.php index e5977dc24..7d6eabd47 100644 --- a/page-buy.php +++ b/page-buy.php @@ -17,7 +17,7 @@

- +

%2$s by following any of the links below:', 'pressbooks-book' ), get_bloginfo( 'url' ), get_bloginfo( 'name' ) ); ?>