This is a minor bugfix release that fixes a couple of issues with hoisting and IIFE.
Thanks to Kyle Robinson Young.
This release improves JSHint's support for variable hoisting and adds a new option,
laxcomma.
/*jshint undef:true */
function func() {
function innerOne() {
// Before: wrong error; Now: knows that innerTwo is defined below.
innerTwo();
}
function innerTwo() {
}
}laxcomma, that allows you to use comma-first
coding style without turning on the laxbreak option. Related:
GH-340.Thanks to Charlie Robbins.
This is a bugfix release that also contains some improvements to our tests:
JSHint.edition property.typeof and delete operators.; (function () { /* ... */ }());
But still warns when in cases like this one:
; function () {}latedef not working for a specific use of
variable hoisting.Thanks to Mike Pennisi and Dan Vanderkam.
This release contains significant improvements to the way JSHint treats ES5 accessor functions:
value as parameter name for setter functions.x = {
get x: function () {},
set x: function () {}
}; While this one is not:
x = {
get x: function () {},
x: true
};Also this release fixes a bug with JSHint producing false warning for the following code:
somevar.replace(/[0-9-]/g, '')
Related discussions:
Thanks to Máté Farkas and Wolfgang Kluge.
Please welcome new JSHint Core team members Wolfgang Kluge and Josh Perez! I'm really excited to work with them on making JSHint the best code quality tool for JavaScript.
A huge* number of tweaks and bugfixes. New options:
funcscope, esnext, multistr and
smarttabs. To see what they do, refer to the docs.
Many thanks to our awesome contributors who participated in this release: Wolfgang Kluge, Josh Perez, Ben Blank, Rob Friesel, Matt, Nicholas Zakas, dionyziz, Ed Lui, Felix Gnass, Tom Rix, Dominic Barnes, Nick Goris, Nicolas Ferrero, Ron DeVera, Sean Carpenter, shahyar, Aparajita Fishman, ckknight, Jakub Suder and Dylan Smith.
* — Since it's been a few months this release is too big to summarzie. Future releases will be smaller and easier to summarize.
After almost a year into development we decided that it's time to make more frequent stable releases and keep a change log.
Here are some links from the past: