Javascript Linting/Analysis of JS files #361
Merged
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.
Description
This adds a makefile target to run a check on js files through jshint:
make js-lint
Experimented with a couple other tools such as
eslint
but they proved cumbersome and overly strict, requiring annotations in script files to direct behavior more and more. Things like spacing, undefined functions (because they were defined in a .go binding) etc. were problematic.Settled on
jshint
since it's looser in its rules. Primarily we are testing for:There is some filtering out of noise from the docker image (npm error, npm warn, etc) that can be ignored. Otherwise, exits with code 1 if errors are detected, and reports errors.
This should allow us to implement in CI/CD processes.
Changes
js-lint
make target.Example Output
With errors:
Without errors:
Links
#342