From f70d9452bf9aaaf6a64c9b29f6e4558fd41fc024 Mon Sep 17 00:00:00 2001 From: Corey McKrill <916023+coreymckrill@users.noreply.github.com> Date: Fri, 14 Apr 2023 12:01:16 -0700 Subject: [PATCH] Enable linting with phpcs-changed locally (#37465) * Update phpcs-changed package to 2.10.2 * Add composer lint commands using phpcs-changed * Add changlog file * Update lint-staged script in package.json --- .../woocommerce/bin/composer/phpcs/composer.json | 2 +- .../woocommerce/bin/composer/phpcs/composer.lock | 14 +++++++------- plugins/woocommerce/changelog/update-phpcs-changed | 4 ++++ plugins/woocommerce/composer.json | 7 +++++-- plugins/woocommerce/package.json | 2 +- 5 files changed, 18 insertions(+), 11 deletions(-) create mode 100644 plugins/woocommerce/changelog/update-phpcs-changed diff --git a/plugins/woocommerce/bin/composer/phpcs/composer.json b/plugins/woocommerce/bin/composer/phpcs/composer.json index 53ed4dac7ca..0c6cdf4e14b 100644 --- a/plugins/woocommerce/bin/composer/phpcs/composer.json +++ b/plugins/woocommerce/bin/composer/phpcs/composer.json @@ -1,7 +1,7 @@ { "require-dev": { "woocommerce/woocommerce-sniffs": "^0.1.3", - "sirbrillig/phpcs-changed": "^2.10" + "sirbrillig/phpcs-changed": "^2.10.2" }, "config": { "platform": { diff --git a/plugins/woocommerce/bin/composer/phpcs/composer.lock b/plugins/woocommerce/bin/composer/phpcs/composer.lock index c56f5561815..701fa79c165 100644 --- a/plugins/woocommerce/bin/composer/phpcs/composer.lock +++ b/plugins/woocommerce/bin/composer/phpcs/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": "4df582a159fa9e6987962ca1917bb00c", + "content-hash": "29a05e32698301ded5eeb893b4c22b90", "packages": [], "packages-dev": [ { @@ -258,16 +258,16 @@ }, { "name": "sirbrillig/phpcs-changed", - "version": "v2.10.1", + "version": "v2.10.2", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-changed.git", - "reference": "a5c3be6ec84395b168e7deadf8b167e50449e7a3" + "reference": "ba0432bc86ffdc31a6946117be6c2419b7e3e16d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-changed/zipball/a5c3be6ec84395b168e7deadf8b167e50449e7a3", - "reference": "a5c3be6ec84395b168e7deadf8b167e50449e7a3", + "url": "https://api.github.com/repos/sirbrillig/phpcs-changed/zipball/ba0432bc86ffdc31a6946117be6c2419b7e3e16d", + "reference": "ba0432bc86ffdc31a6946117be6c2419b7e3e16d", "shasum": "" }, "require": { @@ -308,9 +308,9 @@ "description": "Run phpcs on files, but only report warnings/errors from lines which were changed.", "support": { "issues": "https://github.com/sirbrillig/phpcs-changed/issues", - "source": "https://github.com/sirbrillig/phpcs-changed/tree/v2.10.1" + "source": "https://github.com/sirbrillig/phpcs-changed/tree/v2.10.2" }, - "time": "2023-01-25T17:08:01+00:00" + "time": "2023-03-25T15:10:31+00:00" }, { "name": "squizlabs/php_codesniffer", diff --git a/plugins/woocommerce/changelog/update-phpcs-changed b/plugins/woocommerce/changelog/update-phpcs-changed new file mode 100644 index 00000000000..b454e473c22 --- /dev/null +++ b/plugins/woocommerce/changelog/update-phpcs-changed @@ -0,0 +1,4 @@ +Significance: patch +Type: dev + +Add composer scripts for linting with phpcs-changed diff --git a/plugins/woocommerce/composer.json b/plugins/woocommerce/composer.json index cdac34076f3..8769a7fd02a 100644 --- a/plugins/woocommerce/composer.json +++ b/plugins/woocommerce/composer.json @@ -88,8 +88,11 @@ "phpcs": [ "phpcs -s -p" ], - "phpcs-pre-commit": [ - "phpcs-changed --git -s" + "lint": [ + "chg=$(git diff --relative --name-only -- '*.php'); [ -z $chg ] || phpcs-changed -s --git --git-unstaged $chg" + ], + "lint-staged": [ + "chg=$(git diff HEAD --relative --name-only -- '*.php'); [ -z $chg ] || phpcs-changed -s --git $chg" ], "phpcbf": [ "phpcbf -p" diff --git a/plugins/woocommerce/package.json b/plugins/woocommerce/package.json index 4c235643577..b61faa0474d 100644 --- a/plugins/woocommerce/package.json +++ b/plugins/woocommerce/package.json @@ -98,7 +98,7 @@ "lint-staged": { "*.php": [ "php -d display_errors=1 -l", - "composer run-script phpcs-pre-commit" + "composer run-script lint-staged" ], "!(*min).js": [ "eslint --fix"