1 | # Versions
|
2 |
|
3 |
|
4 | ## v1.9.0 - (29/11/2016)
|
5 |
|
6 | * Now ignoring the "coverage" directory by default.
|
7 |
|
8 | * New ES2015+ rules:
|
9 | * Now disallowing `async` functions which have no `await` expression.
|
10 | (`require-await`)
|
11 | * Added new Flow-related rule, applied only to files with the `@flow`
|
12 | annotation, so it doesn't become intrusive:
|
13 | * Now disallowing the use of primitive constructors as types, such as
|
14 | `Boolean`, `Number` and `String`.
|
15 | (`flowtype/no-primitive-constructor-types`)
|
16 |
|
17 | * New style rule:
|
18 | * Now enforcing capitalization of the first letter of a comment.
|
19 | (`capitalized-comments`)
|
20 |
|
21 | * Updated `@novivia/babel` dependency to v0.0.5.
|
22 |
|
23 |
|
24 | ## v1.8.1 - (18/11/2016)
|
25 |
|
26 | * Updated `eslint-plugin-babel` dependency to v4.
|
27 |
|
28 |
|
29 | ## v1.8.0 - (14/11/2016)
|
30 |
|
31 | * New ES2015+ rule:
|
32 | * Now disallowing unnecessary `return await`. (`no-return-await`)
|
33 |
|
34 | * New React rule:
|
35 | * Now validating whitespace in and around the JSX opening and closing
|
36 | brackets. (`react/jsx-tag-spacing`)
|
37 |
|
38 | * Updated `eslint-plugin-jsx-a11y` dependency to v3.
|
39 |
|
40 |
|
41 | ## v1.7.0 - (04/11/2016)
|
42 |
|
43 | * Now recognizing Jasmine global variables.
|
44 |
|
45 | * Removed ES2015+ rule:
|
46 | * `prefer-reflect` was deprecated. See
|
47 | http://eslint.org/blog/2016/10/eslint-v3.9.0-released#deprecated-rules
|
48 |
|
49 | * New global rule:
|
50 | * Now disallowing redundant return statements. (`no-useless-return`)
|
51 |
|
52 | * New ES2015+ rule:
|
53 | * Now preventing the use of a default export as a locally named import.
|
54 | (`import/no-named-default`)
|
55 |
|
56 | * Removed dependencies:
|
57 | * `babel-cli`
|
58 | * `babel-plugin-syntax-trailing-function-commas`
|
59 | * `babel-plugin-transform-es2015-destructuring`
|
60 | * `babel-plugin-transform-es2015-modules-commonjs`
|
61 | * `babel-plugin-transform-es2015-parameters`
|
62 | * `babel-register`
|
63 |
|
64 | * Updated dependencies:
|
65 | * `@novivia/build-module` to v0.5.
|
66 | * `eslint-plugin-node` to v3.
|
67 |
|
68 |
|
69 | ## v1.6.0 - (27/10/2016)
|
70 |
|
71 | * Now officially requiring Node 4+ and npm 3+ to work.
|
72 | * Now recognizing Jest global variables.
|
73 |
|
74 | * New ES2015+ rules:
|
75 | * Now ensuring that inside a `then()` or a `catch()` we always `return` or
|
76 | `throw` a raw value instead of wrapping in `Promise.resolve` or
|
77 | `Promise.reject`. (`promise/no-return-wrap`)
|
78 | * Added new Flow-related rule, applied only to files with the `@flow`
|
79 | annotation, so it doesn't become intrusive:
|
80 | * Now enforcing consistent separators between properties in object
|
81 | types. (`flowtype/object-type-delimiter`)
|
82 |
|
83 |
|
84 | ## v1.5.0 - (17/10/2016)
|
85 |
|
86 | * New global rule:
|
87 | * Now enforcing function names to match the name of the variable or property
|
88 | to which they are assigned. (`func-name-matching`)
|
89 |
|
90 | * Updated dependencies:
|
91 | * `eslint-plugin-lodash` to v2.
|
92 | * `eslint-plugin-promise` to v3.
|
93 |
|
94 |
|
95 | ## v1.4.0 - (29/09/2016)
|
96 |
|
97 | * New global rule:
|
98 | * Now enforcing `module.exports =` over `exports =`. (`node/exports-style`)
|
99 |
|
100 | * New frontend rule:
|
101 | * Now forbidding require() calls with expressions.
|
102 | (`import/no-dynamic-require`)
|
103 |
|
104 | * New ES2015+ rules:
|
105 | * Now forbidding modules to have too many dependencies, maximum set at 30
|
106 | for now. (`import/max-dependencies`)
|
107 | * Now forbidding import of modules using absolute paths.
|
108 | (`import/no-absolute-path`)
|
109 | * Now forbidding Webpack loader syntax in imports, save for frontend.
|
110 | (`import/no-webpack-loader-syntax`)
|
111 | * Added new Flow-related rules, applied only to files with the `@flow`
|
112 | annotation, so it doesn't become intrusive:
|
113 | * Now checking for duplicate properties in object annotations.
|
114 | (`flowtype/no-dupe-keys`)
|
115 | * Now enforcing the sorting of object annotations.
|
116 | (`flowtype/sort-keys`)
|
117 |
|
118 | * New React rules:
|
119 | * Added React-related exceptions to the `class-methods-use-this` rule.
|
120 | * Now preventing the passing of children as props.
|
121 | (`react/no-children-prop`)
|
122 | * Now preventing invalid characters from appearing in markup.
|
123 | (`react/no-unescaped-entities`)
|
124 |
|
125 | * Addressed an issue where the "frontend" configuration would not properly
|
126 | include the "import" plugin.
|
127 |
|
128 | * Updated dependencies:
|
129 | * `babel-eslint` to v7.
|
130 | * `eslint-plugin-import` to v2.
|
131 |
|
132 |
|
133 | ## v1.3.0 - (12/09/2016)
|
134 |
|
135 | * Updated global rule:
|
136 | * Now enforcing indentation levels in function declarations and function
|
137 | expressions. (`indent`)
|
138 |
|
139 | * New ES2015+ rules:
|
140 | * Added new Flow-related rules, applied only to files with the `@flow`
|
141 | annotation, so it doesn't become intrusive:
|
142 | * Now enforcing the use of "boolean" for boolean type annotations.
|
143 | (`flowtype/boolean-style`)
|
144 | * Now enforcing consistent use of trailing commas in Object and Tuple
|
145 | annotations. (`flowtype/delimiter-dangle`)
|
146 | * Now enforcing consistent use of semicolons after type aliases.
|
147 | (`flowtype/semi`)
|
148 |
|
149 | * New style rules:
|
150 | * Now disallowing newlines before directives and requiring them after
|
151 | directives. (`lines-around-directive`)
|
152 | * Now disallowing `parseInt()` in favor of binary, octal, and hexadecimal
|
153 | literals. (`prefer-numeric-literals`)
|
154 |
|
155 |
|
156 | ## v1.2.0 - (01/09/2016)
|
157 |
|
158 | * New global rules:
|
159 | * Now disallowing negating the left operand of relational operators.
|
160 | (`no-unsafe-negation`)
|
161 | * Now enforcing comparing `typeof` expressions against valid strings.
|
162 | (`valid-typeof`)
|
163 |
|
164 | * New frontend rule:
|
165 | * Now forbidding the use of Node.js builtin modules, except `path`.
|
166 | (`import/no-nodejs-modules`)
|
167 |
|
168 | * New ES2015+ rules:
|
169 | * Now enforcing that class methods utilize `this`.
|
170 | (`class-methods-use-this`)
|
171 | * Now disallowing template literal placeholder syntax in regular strings.
|
172 | (`no-template-curly-in-string`)
|
173 | * Added new Flow-related rules, applied only to files with the `@flow`
|
174 | annotation, so it doesn't become intrusive:
|
175 | * Now enforcing consistent spacing before the opening of generic type
|
176 | annotation parameters. (`flowtype/space-before-generic-bracket`)
|
177 | * Now enforcing consistent spacing around union and intersection type
|
178 | separators. (`flowtype/union-intersection-spacing`)
|
179 |
|
180 | * New style rule:
|
181 | * Now requiring object keys to be sorted. (`sort-keys`)
|
182 |
|
183 | * New React rules:
|
184 | * Now attempting to prevent problems with children and
|
185 | `dangerouslySetInnerHTML`. (`react/no-danger-with-children`)
|
186 | * Now preventing definitions of unused prop types.
|
187 | (`react/no-unused-prop-types`)
|
188 | * Now enforcing the value of the style prop to be an object.
|
189 | (`react/style-prop-object`)
|
190 | * New accessibility rules:
|
191 | * Now enforcing all anchors to contain accessible content.
|
192 | (`jsx-a11y/anchor-has-content`)
|
193 | * Now enforcing a clickable non-interactive element has at least one
|
194 | keyboard event listener. (`jsx-a11y/click-events-have-key-events`)
|
195 | * Now enforcing that non-interactive elements have no interactive
|
196 | handlers. (`jsx-a11y/no-static-element-interactions`)
|
197 |
|
198 | * Removed `eslint-plugin-flow-vars` dependency.
|
199 | * Updated `eslint-plugin-react` dependency to v6.
|
200 |
|
201 |
|
202 | ## v1.1.1 - (01/08/2016)
|
203 |
|
204 | * Addressed an issue where non-ES2015 code would not have the proper
|
205 | configuration for the `no-magic-numbers` rule.
|
206 | * Removed the `jsx-require-extension` React rule since it was redundant with
|
207 | the `extensions` import rule.
|
208 |
|
209 | * Updated `eslint-plugin-react` dependency to v6-rc.1.
|
210 |
|
211 |
|
212 | ## v1.1.0 - (29/07/2016)
|
213 |
|
214 | * New global rule:
|
215 | * Now disallowing tab characters in files. (`no-tabs`)
|
216 |
|
217 | * Updated rules:
|
218 | * Now requiring no spacing for `MemberExpression` in the `indent` rule.
|
219 |
|
220 | * Updated `eslint-plugin-react` dependency to v6-rc.0.
|
221 |
|
222 |
|
223 | ## v1.0.0 - (25/07/2016)
|
224 |
|
225 | * Project now maintained under the Novivia scope (@novivia) and renamed to
|
226 | "linter". (formerly "eslint-myrules") Options must now be specified
|
227 | using the `novivia-linter` field in the package manifest or using a
|
228 | `.novivialinterrc` file.
|
229 |
|
230 | * New global rules:
|
231 | * Now enforcing return statements in callbacks of array’s methods.
|
232 | (`array-callback-return`)
|
233 | * Now requiring or disallow named function expressions. (`func-names`)
|
234 | * Now ensuring that files begin with the Novivia header. (`header/header`)
|
235 | * Now enforcing consistent spacing before and after keywords.
|
236 | (`keyword-spacing`)
|
237 | * Now validating the file name against the default exported value in the
|
238 | module. (`filenames/match-exported`)
|
239 | * Now enforcing a certain file naming convention.
|
240 | (`filenames/match-regex`)
|
241 | * Now enforcing a maximum file length of 500 lines, excluding whitespace
|
242 | and comments. (`max-lines`)
|
243 | * Now enforcing a maximum number of statements allowed per line.
|
244 | (`max-statements-per-line`)
|
245 | * Now requiring an empty line before return statements.
|
246 | (`newline-before-return`)
|
247 | * Now disallowing deprecated APIs. (`node/no-deprecated-api`)
|
248 | * Now disallowing unnecessary nested blocks. (`no-lone-blocks`)
|
249 | * Now disallowing unmodified conditions of loops.
|
250 | (`no-unmodified-loop-condition`)
|
251 | * Now disallowing control flow statements in finally blocks.
|
252 | (`no-unsafe-finally`)
|
253 | * Now disallowing unnecessary computed property keys on objects.
|
254 | (`no-useless-computed-key`)
|
255 | * Now disallowing unnecessary escape usage. (`no-useless-escape`)
|
256 | * Now disallowing renaming import, export, and destructured assignments to
|
257 | the same name. (`no-useless-rename`)
|
258 | * Now disallowing whitespace before properties.
|
259 | (`no-whitespace-before-property`)
|
260 | * Now enforcing placing object properties on separate lines.
|
261 | (`object-property-newline`)
|
262 | * Now enforcing spacing between rest and spread operators and their
|
263 | expressions. (`rest-spread-spacing`)
|
264 | * Now suggesting the correct usage for the shebang. (`node/shebang`)
|
265 | * Now disallowing the Unicode Byte Order Mark (BOM). (`unicode-bom`)
|
266 | * Security-oriented rules:
|
267 | * Now detecting calls to `Buffer` with the `noassert` flag set.
|
268 | (`security/detect-buffer-noassert`)
|
269 | * Now detecting instances of `child_process` and non-literal
|
270 | `cp.exec()`. (`security/detect-child-process`)
|
271 | * Now detecting variables in the filename argument of `fs` calls.
|
272 | (`security/detect-non-literal-fs-filename`)
|
273 | * Now detecting dynamic regular expressions.
|
274 | (`security/detect-non-literal-regexp`)
|
275 | * Now detecting insecure comparisons.
|
276 | (`security/detect-possible-timing-attacks`)
|
277 | * Now detecting if `pseudoRandomBytes()` is in use.
|
278 | (`security/detect-pseudoRandomBytes`)
|
279 | * Now locating potentially unsafe regular expressions.
|
280 | (`security/detect-unsafe-regex`)
|
281 |
|
282 | * Lo-Dash specific rules:
|
283 | * Now disallowing `thisArg` for Lo-Dash method callbacks.
|
284 | (`lodash/callback-binding`)
|
285 | * Now enforcing a specific chain style. (`lodash/chain-style`)
|
286 | * Now ensuring values returned from collection methods are used
|
287 | properly. (`lodash/collection-method-value`)
|
288 | * Now ensuring a value is always returned in iteratees of Lo-Dash
|
289 | collection methods that aren't `forEach`.
|
290 | (`lodash/collection-return`)
|
291 | * Now enforce a specific function composition direction.
|
292 | (`lodash/consistent-compose`)
|
293 | * Now enforcing `_.identity` shorthand syntax.
|
294 | (`lodash/identity-shorthand`)
|
295 | * Now enforcing `_.matches` property shorthand syntax.
|
296 | (`lodash/matches-prop-shorthand`)
|
297 | * Now enforcing `_.matches` shorthand syntax.
|
298 | (`lodash/matches-shorthand`)
|
299 | * Now disallowing the use of `.commit()` on chains that should end
|
300 | with `.value()`. (`lodash/no-commit`)
|
301 | * Now disallowing the use of `.value()` on chains that have already
|
302 | ended. (`lodash/no-double-unwrap`)
|
303 | * Now disallowing superfluous arguments on Lo-Dash methods with a
|
304 | specified arity. (`lodash/no-extra-args`)
|
305 | * Now disallowing chaining syntax for single methods.
|
306 | (`lodash/no-single-chain`)
|
307 | * Now enforcing a specific path style for methods like `get` and
|
308 | `property`. (`lodash/path-style`)
|
309 | * Now enforcing Lo-Dash chains over nested Lo-Dash calls.
|
310 | (`lodash/prefer-chain`)
|
311 | * Now enforcing `_.compact` over `_.filter` for only truthy values.
|
312 | (`lodash/prefer-compact`)
|
313 | * Now enforcing `_.filter` over `_.forEach` with an if statement
|
314 | inside. (`lodash/prefer-filter`)
|
315 | * Now enforcing `_.flatMap` over consecutive map and `_.flatten`.
|
316 | (`lodash/prefer-flat-map`)
|
317 | * Now enforcing using `_.get` or `_.has` over expression chains like
|
318 | `a && a.b && a.b.c`. (`lodash/prefer-get`)
|
319 | * Now enforcing using `_.invoke` over `_.map` with a method call
|
320 | inside. (`lodash/prefer-invoke-map`)
|
321 | * Now enforcing using `_.isNil` over checks for both null and
|
322 | undefined. (`lodash/prefer-is-nil`)
|
323 | * Now enforcing using `_.map` over `_.forEach` with a push inside.
|
324 | (`lodash/prefer-map`)
|
325 | * Now enforcing using `_.matches` over conditions like
|
326 | `a.foo === 1 && a.bar === 2 && a.baz === 3`.
|
327 | (`lodash/prefer-matches`)
|
328 | * Now enforcing using `_.noop` over empty functions.
|
329 | (`lodash/prefer-noop`)
|
330 | * Now enforcing using `_.overSome` and `_.overEvery` over checks with
|
331 | `&&` and `||` for methods that have a boolean check iteratee.
|
332 | (`lodash/prefer-over-quantifier`)
|
333 | * Now enforcing using `_.reject` over `_.filter` with `!(expression)`
|
334 | or `x.prop1 !== value`. (`lodash/prefer-reject`)
|
335 | * Now enforcing using `_.prototype.thru` in the chain and not calling
|
336 | functions in the initial value. (`lodash/prefer-thru`)
|
337 | * Now enforcing using `_.times` over `_.map` without using the
|
338 | iteratee's arguments. (`lodash/prefer-times`)
|
339 | * Now enforcing using array and string methods in the chain and no
|
340 | the initial value. (`lodash/prefer-wrapper-method`)
|
341 | * Now enforcing using main method names instead of aliases.
|
342 | (`lodash/preferred-alias`)
|
343 | * Now enforcing property shorthand syntax. (`lodash/prop-shorthand`)
|
344 | * Now preventing chaining without evaluation via `value()` or
|
345 | non-chainable methods like `max()`. (`lodash/unwrap`)
|
346 |
|
347 | * New frontend rule:
|
348 | * Now preventing Lo-Dash and React-Bootstrap from being completely
|
349 | imported. (`lean-imports/import`)
|
350 |
|
351 | * New ES2015+ rules:
|
352 | * Now ensuring a default export is present, given a default import.
|
353 | (`import/default`)
|
354 | * Now reporting any invalid exports such as re-exports of the same name.
|
355 | (`import/export`)
|
356 | * Now ensuring consistent use of file extension within the import path.
|
357 | (`import/extensions`)
|
358 | * Now ensuring all imports appear before other statements.
|
359 | (`import/imports-first`)
|
360 | * Now ensuring named imports correspond to a named export in the remote
|
361 | file. (`import/named`)
|
362 | * Now enforcing a newline after import statements.
|
363 | (`import/newline-after-import`)
|
364 | * Now disallowing modifying variables of class declarations.
|
365 | (`no-class-assign`)
|
366 | * Now disallowing arrow functions where they could be confused with
|
367 | comparisons. (`no-confusing-arrow`)
|
368 | * Now disallowing constant expressions in conditions.
|
369 | (`no-constant-condition`)
|
370 | * Now reporting imported names marked with @deprecated documentation tag.
|
371 | (`import/no-deprecated`)
|
372 | * Now disallowing duplicate imports. (`no-duplicate-imports`)
|
373 | * Now forbidding the use of mutable exports with `var` or `let`.
|
374 | (`import/no-mutable-exports`)
|
375 | * Now disallowing the `Symbol` constructor. (`no-new-symbol`)
|
376 | * Now ensuring imported namespaces contain dereferenced properties as they
|
377 | are dereferenced. (`import/no-namespace`)
|
378 | * Now ensuring imports point to a file/module that can be resolved.
|
379 | (`import/no-unresolved`)
|
380 | * Now disallowing unnecessary constructor. (`no-useless-constructor`)
|
381 | * Now suggesting using the rest parameters instead of arguments.
|
382 | (`prefer-rest-params`)
|
383 | * Now disallowing usage of spacing in template strings.
|
384 | (`template-curly-spacing`)
|
385 | * Now enforcing spacing around the `*` in `yield*` expressions.
|
386 | (`yield-star-spacing`)
|
387 | * Now ensuring that a new promise or a value is returned inside a `then()`.
|
388 | (`promise/always-return`)
|
389 | * Now ensuring that each time a `then()` is applied to a promise, a
|
390 | `catch()` is applied as well. (`promise/catch-or-return`)
|
391 | * Now enforcing standard parameter names for Promise constructors.
|
392 | (`promise/param-names`)
|
393 | * Added new Flow-related rules, applied only to files with the `@flow`
|
394 | annotation, so it doesn't become intrusive:
|
395 | * Now requiring that all function parameters have type annotations.
|
396 | (`flowtype/require-parameter-type`)
|
397 | * Now requiring that functions have return type annotation.
|
398 | (`flowtype/require-return-type`)
|
399 | * Now verifying that files have a valid `@flow` annotation. It will
|
400 | report annotations with typos (such as `// @floww`) or not placed at
|
401 | the top of the file. (`flowtype/require-valid-file-annotation`)
|
402 | * Now enforcing consistent spacing after the type annotation colon.
|
403 | (`flowtype/space-after-type-colon`)
|
404 | * Now enforcing consistent spacing before the type annotation colon.
|
405 | (`flowtype/space-before-type-colon`)
|
406 | * Now enforcing a consistent naming pattern for type aliases.
|
407 | (`flowtype/type-id-match`)
|
408 |
|
409 | * New style rules:
|
410 | * Now requiring a newline after each call in a method chain.
|
411 | (`newline-per-chained-call`)
|
412 | * Now disallowing nested ternary expressions. (`no-nested-ternary`)
|
413 | * Now disallowing spacing between function identifiers and their
|
414 | applications. (`no-spaced-func`)
|
415 | * Now disallowing a space before function parenthesis.
|
416 | (`space-before-function-paren`)
|
417 |
|
418 | * New React rules:
|
419 | * Now disallowing spaces around equal signs in JSX attributes.
|
420 | (`react/jsx-equals-spacing`)
|
421 | * Now restricting file extensions that may contain JSX to `.jsx`.
|
422 | (`react/jsx-filename-extension`)
|
423 | * Now preventing the usage of unsafe `target="_blank"`.
|
424 | (`react/jsx-no-target-blank`)
|
425 | * Now preventing comments from being inserted as text nodes.
|
426 | (`react/jsx-no-comment-textnodes`)
|
427 | * Now enforcing the position of the first prop in JSX.
|
428 | (`react/jsx-first-prop-new-line`)
|
429 | * Now enforcing alphabetical props sorting. (`react/jsx-sort-props`)
|
430 | * Now validating spacing before closing bracket in JSX.
|
431 | (`react/jsx-space-before-closing`)
|
432 | * Now preventing usage of the return value of `React.render`.
|
433 | (`react/no-render-return-value`)
|
434 | * Now enforcing stateless React components to be written as pure
|
435 | functions. (`react/prefer-stateless-function`)
|
436 | * Now enforcing React components to have a `shouldComponentUpdate` method.
|
437 | (`react/require-optimization`)
|
438 | * Now enforcing ES2015+ classes extending `React.Component` to return
|
439 | a value in their render function. (`react/require-render-return`)
|
440 |
|
441 | * Updated rules:
|
442 | * Reduced the minimum identifier length to 2 in the `id-length` rule, as
|
443 | there were too many relevant 3-letter identifiers.
|
444 | * Now ignoring array indexes in the `no-magic-numbers` rule.
|
445 |
|
446 | * Removed rules:
|
447 | * `no-negated-condition`
|
448 |
|
449 | * New dependencies:
|
450 | * `@novivia/open-sourcer`
|
451 | * `babel-cli`.
|
452 | * `babel-plugin-syntax-trailing-function-commas`.
|
453 | * `babel-plugin-transform-es2015-destructuring`.
|
454 | * `babel-plugin-transform-es2015-modules-commonjs`.
|
455 | * `babel-plugin-transform-es2015-parameters`.
|
456 | * `babel-register`.
|
457 | * `eslint-plugin-filenames`.
|
458 | * `eslint-plugin-flowtype`.
|
459 | * `eslint-plugin-header`.
|
460 | * `eslint-plugin-import`.
|
461 | * `eslint-plugin-jsx-a11y`.
|
462 | * `eslint-plugin-lean-imports`.
|
463 | * `eslint-plugin-lodash`.
|
464 | * `eslint-plugin-markdown`.
|
465 | * `eslint-plugin-new-with-error`.
|
466 | * `eslint-plugin-node`.
|
467 | * `eslint-plugin-promise`.
|
468 | * `eslint-plugin-security`.
|
469 | * `eslint-plugin-you-dont-need-lodash-underscore`.
|
470 |
|
471 | * Updated dependencies:
|
472 | * `@novivia/build-module` to v0.3.
|
473 | * `babel-eslint` to v6.
|
474 | * `eslint` to v3.
|
475 | * `eslint-plugin-flow-vars` to v0.4.
|
476 | * `eslint-plugin-react` to v6-alpha.2.
|
477 |
|
478 |
|
479 | ## v0.6.3 - (13/01/2016)
|
480 |
|
481 | * Updated `babel-eslint` to v5-beta6.
|
482 |
|
483 |
|
484 | ## v0.6.2 - (12/01/2016)
|
485 |
|
486 | * Updated rule:
|
487 | * No longer enforcing the use of `const` outside ES2015 environments for the
|
488 | `no-magic-numbers` global rule.
|
489 |
|
490 |
|
491 | ## v0.6.1 - (12/01/2016)
|
492 |
|
493 | * Fixed configuration mistake for the `jsx-handler-names` React rule.
|
494 |
|
495 |
|
496 | ## v0.6.0 - (12/01/2016)
|
497 |
|
498 | * New global rule:
|
499 | * Now disallowing the use of lexical declarations in `case`/`default`
|
500 | clauses. (`no-case-declarations`)
|
501 |
|
502 | * New ES2015+ rule:
|
503 | * Now disallowing the use of `await` in loops. (`no-await-in-loop`)
|
504 |
|
505 | * New style rule:
|
506 | * Now requiring the use of the second argument for `parseInt`, unless it's
|
507 | the value 10. (`radix`)
|
508 |
|
509 | * New React rules:
|
510 | * Now ensuring that any component or prop methods used to handle events are
|
511 | correctly prefixed. (`jsx-handler-names`)
|
512 | * Now enforcing component indentation. (`jsx-indent`)
|
513 | * Now pointing out missing key properties. (`jsx-key`)
|
514 | * Now enforcing PascalCase for component names. (`jsx-pascal-case`)
|
515 | * Now disallowing the use of deprecated React methods. (`no-deprecated`)
|
516 | * Now disallowing the use of `isMounted`. (`no-is-mounted`)
|
517 | * Now disallowing the use of strings for refs. (`no-string-refs`)
|
518 |
|
519 | * Updated rules:
|
520 | * Now allowing `setState` calls in functions inside `componentDidUpdate`,
|
521 | for the `no-did-update-set-state` React rule.
|
522 | * Added the following exceptions to the `id-length` rule:
|
523 | * `fs`
|
524 | * `i`
|
525 | * `j`
|
526 | * `k`
|
527 | * `log`
|
528 |
|
529 | * New dependency:
|
530 | * `eslint-plugin-flow-vars`.
|
531 |
|
532 | * Updated dependency:
|
533 | * `@auex/build-module` to v0.2.
|
534 |
|
535 |
|
536 | ## v0.5.3 - (18/12/2015)
|
537 |
|
538 | * Updated `eslint-myrules-manager` to v0.5 to fix crash pertaining to recent
|
539 | ESLint internal modification.
|
540 |
|
541 |
|
542 | ## v0.5.2 - (06/11/2015)
|
543 |
|
544 | * Added the following exceptions to the `no-underscore-dangle` rule:
|
545 | * `__DEV__`
|
546 | * `__PRERENDER__`
|
547 | * `__PROD__`
|
548 | * `__STAGE__`
|
549 | * `__TEST_ENV__`
|
550 | * `_id`
|
551 |
|
552 | * Added the following exceptions to the `id-length` rule:
|
553 | * `key`
|
554 | * `src`
|
555 | * `url`
|
556 |
|
557 | * Added an exception for `self` in the `no-shadow` rule.
|
558 | * Relaxed the format requirement for descriptions in the `valid-jsdoc` rule.
|
559 | * Added an exception for the `?` operator in the `operator-linebreak` style
|
560 | rule. It now has to be at the end of a multi-line statement like all other
|
561 | operators except for `:`. This is how it should already have been.
|
562 |
|
563 |
|
564 | ## v0.5.1 - (05/11/2015)
|
565 |
|
566 | * Properly removed all leftovers from the removed
|
567 | `eslint-plugin-shadow-exception` ESLint plugin.
|
568 |
|
569 |
|
570 | ## v0.5.0 - (03/11/2015)
|
571 |
|
572 | * New ES2015 rules:
|
573 | * Now disallowing arrow functions where a condition is expected.
|
574 | (`no-arrow-condition`)
|
575 | * Now enforcing proper arrow body style depending on body content.
|
576 | (`arrow-body-style`)
|
577 |
|
578 | * Updated rules:
|
579 | * Now only allowing 1 empty line to end a file when enforcing the
|
580 | `no-multiple-empty-lines` style rule.
|
581 |
|
582 | ## v0.4.0 - (29/10/2015)
|
583 |
|
584 | * New global rules:
|
585 | * Now disallowing the use of magic numbers. (`no-magic-numbers`)
|
586 | * Now disallowing the assignment of function expressions, except in the case
|
587 | of arrow functions. (`func-style`)
|
588 | * Now disallowing the use of undeclared variables, except if they're known
|
589 | globals. (`no-undef`)
|
590 | * Now disallowing dangling underscores in identifiers with the exception of
|
591 | `_id`. (`no-underscore-dangle`)
|
592 |
|
593 | * New style rules:
|
594 | * Now disallowing spaces inside of single line blocks. (`block-spacing`)
|
595 | * Now disallowing negated conditions in lone if statements.
|
596 | (`no-negated-condition`)
|
597 | * Now requiring a space before all keywords. (`space-before-keywords`)
|
598 | * Now requiring a space after all keywords. (`space-after-keywords`)
|
599 |
|
600 | * New ES2015 rules:
|
601 | * Now disallowing duplicate names in class members.
|
602 | (`no-dupe-class-members`)
|
603 | * Now disallowing unnecessary concatenation of literals or template
|
604 | literals. (`no-useless-concat`)
|
605 | * Now disallowing empty destructuring patterns. (`no-empty-pattern`)
|
606 | * Now suggesting to use arrow functions as callbacks.
|
607 | (`prefer-arrow-callback`)
|
608 | * Now suggesting to use template literals instead of strings concatenation.
|
609 | (`prefer-template `)
|
610 |
|
611 | * New React rules:
|
612 | * Now disallowing the direct mutation of `this.state`.
|
613 | (`no-direct-mutation-state`)
|
614 | * Now suggesting components to be ES2015 classes. (`prefer-es6-class`)
|
615 | * Now enforcing the closing bracket location for JSX multiline elements.
|
616 | (`jsx-closing-bracket-location`)
|
617 | * Now validating a specific indentation style for props.
|
618 | (`jsx-indent-props`)
|
619 |
|
620 | * Updated rules:
|
621 | * Now ignoring object properties when enforcing the `id-length` global rule.
|
622 | * Now allowing the following identifiers when enforcing the `id-length`
|
623 | global rule:
|
624 | * `_`
|
625 | * `__`
|
626 | * `db`
|
627 | * `lot`
|
628 |
|
629 | * Now allowing short-circuiting and ternary expressions in the
|
630 | `no-unused-expressions` global rule.
|
631 | * Now allowing comments at the start of arrays, array-likes, objects and
|
632 | object-likes in the `lines-around-comment` style rule. (`allowArrayStart`
|
633 | and `allowObjectStart`)
|
634 | * Now expecting properties beginning with "on" to be last in a component's
|
635 | `propTypes`. (`callbacksLast`)
|
636 |
|
637 | * Updated dependency:
|
638 | * `eslint-myrules-manager` to v0.4 and adjusted configuration accordingly.
|
639 |
|
640 |
|
641 | ## v0.3.0 - (19/08/2015)
|
642 |
|
643 | * Modified rules:
|
644 | * Now ignoring URLs in the `max-len` rule.
|
645 | * Now enforcing indentation for switch-cases and variable declarations in
|
646 | the `indent` rule.
|
647 |
|
648 | * New rules:
|
649 | * Now disallowing unnecessary `.call()` and `.apply()`. (`no-useless-call`)
|
650 | * Now enforcing the use of `return` when executing a callback, unless it's
|
651 | the last operation. (`callback-return`)
|
652 |
|
653 | * New ES2015 rules:
|
654 | * Now enforcing arrow function spacing. (`arrow-spacing`)
|
655 | * Now enforcing trailing commas on multiline arrays and objects.
|
656 | (`comma-dangle`)
|
657 | * Now disallowing the use of multiple spaces in all cases.
|
658 | (`no-multi-spaces`)
|
659 | * Now disallowing mixing regular variable and require declarations.
|
660 | (`no-mixed-requires`)
|
661 | * Now disallowing modifying variables of class declarations
|
662 | (`no-class-assign`)
|
663 | * Now disallowing modifying variables that are declared using `const`
|
664 | (`no-const-assign`)
|
665 | * Now disallowing the `this` keyword outside of classes or class-like
|
666 | objects (`no-invalid-this`)
|
667 | * Now disallowing reassignment of function parameters. (`no-param-reassign`)
|
668 | * Now suggesting to use Reflect methods where applicable. (`prefer-reflect`)
|
669 | * Now suggesting to use the spread operator instead of `.apply()`.
|
670 | (`prefer-spread`)
|
671 | * Now disallowing generator functions that do not have `yield`.
|
672 | (`require-yield`)
|
673 | * Now preventing the use of any `strict` directive. (`strict`)
|
674 |
|
675 | * Under the hood: Updated ESLint to 1.1, eslint-plugin-react to 3.2 and
|
676 | eslint-plugin-babel to 2.0. As a result, added rules that were on by default
|
677 | prior to ESLint 1.0.
|
678 |
|
679 |
|
680 | ## v0.2.0 - (31/07/2015)
|
681 |
|
682 | * Package now scoped under @auex and published in private npm.
|
683 | * Added change log (This!)
|