Add package-json-lint rules and configuration for ESLint plugin#73328
Add package-json-lint rules and configuration for ESLint plugin#73328dkjensen wants to merge 4 commits intoWordPress:trunkfrom
Conversation
|
👋 Thanks for your first Pull Request and for helping build the future of Gutenberg and WordPress, @dkjensen! In case you missed it, we'd love to have you join us in our Slack community. If you want to learn more about WordPress development in general, check out the Core Handbook full of helpful information. |
ee5092f to
c38e7c5
Compare
c38e7c5 to
b4c174e
Compare
|
Warning: Type of PR label mismatch To merge this PR, it requires exactly 1 label indicating the type of PR. Other labels are optional and not being checked here.
Read more about Type labels in Gutenberg. Don't worry if you don't have the required permissions to add labels; the PR reviewer should be able to help with the task. |
|
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
|
Warning: Type of PR label mismatch To merge this PR, it requires exactly 1 label indicating the type of PR. Other labels are optional and not being checked here.
Read more about Type labels in Gutenberg. Don't worry if you don't have the required permissions to add labels; the PR reviewer should be able to help with the task. |
1 similar comment
|
Warning: Type of PR label mismatch To merge this PR, it requires exactly 1 label indicating the type of PR. Other labels are optional and not being checked here.
Read more about Type labels in Gutenberg. Don't worry if you don't have the required permissions to add labels; the PR reviewer should be able to help with the task. |
What?
Adds a new ESLint rule @wordpress/validate-package-json that validates package.json files using the WordPress npm-package-json-lint configuration.
Why?
Currently, @wordpress/scripts provides a
lint-pkg-jsoncommand that validates package.json files, but it has limitations:wp-scripts lint-pkg-json)This leads to:
By integrating
npm-package-json-lintinto ESLint, developers get:Immediate feedback in their editor as they type
eslint --fix)How?
New ESLint Rule:
validate-package-jsonrule that wrapsnpm-package-json-lint@wordpress/npm-package-json-lint-configFeatures:
rulesoption to disable/override specific checksNew Config Preset:
package-json-lintpreset:plugin:@wordpress/eslint-plugin/package-json-lintpackage.jsonfilesTesting Instructions
Sample eslint configuration:
{ "extends": [ "plugin:@wordpress/eslint-plugin/package-json-lint", "plugin:@wordpress/eslint-plugin/recommended-with-formatting" ], // Necessary if using other rules for JS/TS files in addition to package.json rules "overrides": [ { "files": ["package.json"], "parser": "jsonc-eslint-parser" } ] }