- 'gulp clear' removes everything currently cached.
- `gulp learnsets` is intended to check /**/learnsets.js files for proper packing. This is no longer done in `npm test`.
This cache is quite awful (welcome to the world of Node.js, I guess),
but at least it works. It has few flaws, like not being able to GC
unused cache files. Still, has to work for now. Changes syntax test
times from 10 minutes on my very slow laptop to 0.6 seconds.
(I wonder how this will work with Travis...)
Later I will try to figure out why JSHint is so unbelievably slow.
- Remove `gulp-util`: it's not used and its installation is no longer recommended in Gulp's documentation.
- Next minor version for `gulp-jscs`. Next major for `jshint-stylish`.
- Streams are merged to make sure that all errors and warnings are reported.
- Adds dev dependencies: `merge-stream` and `lazypipe`.
- Tracks a fork of `gulp-jshint` to fix https://github.com/spalger/gulp-jshint/issues/88
- Use an ES6 parser.
- Disallow "with".
- Only validate line breaks when running in CI environments.
- Add various missing rules regarding spacing and line breaks.
- JSCS rule "disallowNewLineBeforeBlockStatements" is already in Google preset.
- JSHint rule "immed" is deprecated in favor of JSCS' "requireParenthesesAroundIIFE".
- JSHint rule "smarttabs" is deprecated in favor of JSCS' "disallowMixedSpacesAndTabs": "smart".
- JSHint rule "trailing" is deprecated in favor of JSCS' "disallowTrailingWhiteSpace".
- JSHint rule "newcap" is deprecated in favor of JSCS' "requireCapitalizedConstructors".
The `let` hack is completely and utterly intentional.
Declare variables in the scope they're used in. There is no reason to
remove the let hack unless you want bad code to pass. I do not want
bad code to pass.
This reverts commit 0b76e245b6.
Let hack is not necessary as the test is being passed without it and it makes var in blocks fail.
To get rid of 'let unexpected token' we must either configure traceur to set blockBindings to true or just get rid of the hack and use both var and let properly.
This also fixes the fake build failure from previous commit f0d33f6473
JSHint is now a fair bit stricter, and is now correctly checking
files in `mods/`.
The code has been fixed to match the new stricter standards.
JSHint has now caught its second actual bug: Gen 5 Pinap Berry
was Ice instead of Grass.
I used a hack to make the multiple declaration errors go away,
so all that remained in jsHint were actual errors, which I've
now mostly fixed.
All this linting ended up uncovering one actual bug: Uproar's
message not showing. It's a very minor bug in a move no one uses,
so I'm going to fold it into this commit.