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.
EXPERIMENT FOR #323 - NOT TO MERGE
Description of change
This is a proof of concept on how this tool can integrate with ESlint.
How it works
package.json
files. It works by returning an empty AST tree to ESLint (so eslint pretty much ignores it) but also providing "parser services" that rules can use. Those services are used to expose the content ofpackage.json
and its patheslint-plugin-package-json
that is an ESlint plugin. AFAIK this has to be a package prefixed witheslint-plugin
.package-json
. This rule uses the "parser services" to load the content ofpackage.json
, callsnpm-package-json-lint
API to lint it, and re-shapes the error report in the format that eslint expects.Caveats
npm-package-json-lint
, this may be best implemented as a separate package.Please let me know what you think. I'm happy to implement this "for good" in this package, or create a separate package for it.