ESLint Plugin: Fix recommended
preset when prettier
is not installed#40634
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What?
This change fixes
recommended
ESLint preset whenprettier
is not installed.Why?
The
prettier
package is intended to be an optional peer dependency, but is incorrectly required when using the@wordpress/eslint-plugin/recommended
preset. Failure to installprettier
results in an error when using that preset:The prettier rulesets should be added only when the user has installed
prettier
. However, the@worpress/prettier-config
package eagerly loadsprettier
'spackage.json
, leading to an error when it is not installed.How?
This change moves the require of
@worpress/prettier-config
inside the relevantif
block, so that it is only loaded whenprettier
is confirmed to be installed.Testing Instructions
On any JavaScript project, use the following
.eslintrc.json
withoutprettier
installed: