152 KiB
152 KiB
Change Log
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning. This change log adheres to standards from Keep a CHANGELOG.
7.19.0 - 2020-03-06
Added
style-prop-object
: Addallow
option (#1819 @hornta)jsx-pascal-case
: Support unicode characters (#2557 @Svish)
Fixed
prefer-stateless-function
: avoid crash on ts empty constructor (#2582 @golopot)no-adjacent-inline-elements
: avoid a crash (#2575 @ljharb)no-unused-prop-types
: Change the reporting to point to a more accurate node (#2292 @jseminck)self-closing-comp
: consider JSXMemberExpression as component too (#2572 @Belco90)no-unused-prop-types
: makemarkPropTypesAsUsed
work withTSEmptyBodyFunctionExpression
AST node (#2560 @guillaumewuip)- [
displayName
][] (but really,propTypes
detection): do not crash on empty flow type spreads (#2570 @ljharb)
Changed
- [readme] Small visual inconsistency (#2568 @arvigeus)
- [docs] add
react/
prefix to rule name, for consistency no-unescaped-entities
: skip test cases that are now parsing errors in acorn-jsx@5.2.0 (#2583 @golopot)
7.18.3 - 2020-02-02
Fixed
jsx-indent
: don't check literals not within JSX (#2564 @toshi-toma)
7.18.2 - 2020-02-01
Fixed
jsx-indent
: avoid a crash on non-string literals (#2561 @ljharb)
7.18.1 - 2020-02-01
Fixed
jsx-indent
: Does not check indents for JSXText (#2542 @toshi-toma)jsx-props-no-spreading
: add support for namespaced jsx components (#2534 @jonathanpalma)jsx-no-target-blank
: allow rel to be an expression (#2544 @odinho)sort-comp
:|
isn’t a valid regex flag;u
ands
are (@ljharb)
Changed
- [Docs] use
markdown-magic
to automatically sort all rules alphabetically (#1742 @ybiquitous) - [Docs]
jsx-props-no-spreading
: fix typo to use correct rule (#2547 @jonggyun))
7.18.0 - 2020-01-15
Added
require-default-props
: add option to ignore functional components (#2532 @RedTn)function-component-definition
: Enforce a specific function type for function components (#2414 @Stefanwullems)no-adjacent-inline-elements
: Prevent adjacent inline elements not separated by whitespace (#1155 @SeanHayes)jsx-no-script-url
: prevent usage ofjavascript:
URLs (#2419 @sergei-startsev)
Fixed
jsx-pascal-case
: false negative with namespacing (#1337 @mfyuce)jsx-curly-brace-presence
: Fixcurly-brace-presence
edge cases (#2523 @rafbgarcia)prop-types
: Does not validate missing propTypes for LogicalExpression (#2533 @toshi-toma)no-unknown-property
: allowTransparency does not exist in React >= v16.1 (#1538 @dawidvdh)jsx-curly-brace-presence
: Fix error related to tags line break (#2521 @rafbgarcia)no-typos
: Compilation error when method name is string instead of identifier (#2514 @shijistar)jsx-curly-brace-presence
: allow trailing spaces in TemplateLiteral (#2507 @doochik)no-unused-prop-types
,no-unused-state
: fix false positives when using TS type assertions (#2536 @kdmadej)
Changed
- [Docs]
no-render-return-value
: Fix title (#2540 @micnic) - [Refactor]: remove unused codes in util/propTypes (#2288 @golopot)
no-typos
: check static lifecycle methods (#2006 @bsonntag)- [Docs]
jsx-first-prop-new-line
: Fix rule name in "Rule Options" section (#2535 @barreira) - [Tests]
no-unused-prop-types
: Added test cases (#977 @dozoisch) - [Tests] avoid running tests on pretest job
- [meta] Move eslint-plugin-eslint-plugin to devDeps (#2510 @nstepien)
- [Deps] update
array-includes
,object.entries
,object.fromentries
,object.values
,resolve
7.17.0 - 2019-11-28
Added
jsx-no-target-blank
: addallowReferrer
option (#2478 @eps1lon)jsx-handler-names
: addcheckLocalVariables
option (#2470 @aub)prop-types
: Support Flow Type spread (#2446 @moroine)jsx-props-no-spreading
: addexplicitSpread
option to allow explicit spread of props (#2449 @pawelnvk)jsx-no-target-blank
: warn ontarget={'_blank'}
expressions (#2451 @timkraut)function-component-definition
: Enforce a specific function type for function components (#2414 @Stefanwullems)
Fixed
sort-prop-types
,jsx-sort-default-props
: disable broken autofix (#2505 @webOS101)no-typos
: improve report location (#2468 @golopot)jsx-no-literals
: trim whitespace forallowedStrings
check (#2436 @cainlevy)jsx-curly-brace-presence
: Fix filter of undefined error with whitespace inside jsx attr curlies (#2460 @dustinyoste)no-render-return-value
: should warn when used in assignment expression ([#2462][] @jichu4n)jsx-curly-brace-presence
: allow trailing spaces in literal (#2448 @doochik)
Changed
- [Deps] update
jsx-ast-utils
,object.fromentries
,resolve
- [eslint] fix func-names and change object-shorthand to 'always' (#2483 @golopot)
- [Docs]
jsx-first-prop-new-line
: Fix documentation formatting (#2489 @pjg) - [Docs]
prop-types
: Update 'skipUndeclared' in rule options (#2504 @cjnickel) - [Docs]
jsx-first-prop-new-line
: fix wrong rule name (#2500 @zgayjjf) - [eslint] enable eslint-plugin-eslint-plugin (#2469 @golopot)
- [Docs]
jsx-props-no-multi-spaces
: suggest using core rule instead (#2463 @golopot) - [Docs]
jsx-first-prop-new-line
: add rule options (#2465 @SerdarMustafa1) - [Docs]
jsx-no-target-blank
: Add section about overriding for trusted links (#2438 @aschriner) - [Docs] fix typo (#2453 @cainwatson)
- [Docs]
no-unused-prop-types
: clean up prose (#2273 @coryhouse) - [Docs]
jsx-no-bind
: add section about React Hooks (#2443 @kdex)
7.16.0 - 2019-10-04
Added
jsx-sort-default-props
: make rule fixable (#2429 @emroussel)
Fixed
jsx-no-useless-fragment
: usearray-includes
over.includes
for back compat (@ljharb)jsx-curly-brace-presence
: allow necessary white-space literal (#2437 @uniqname)jsx-curly-brace-presence
: warns incorrectly on trailing whitespace (#2431 @BC-M)no-unused-prop-types
: false positive when nested destructuring (#2428 @golopot)
7.15.1 - 2019-10-01
Fixed
jsx-curly-brace-presence
: bail out checks when JSXElements are passed as props (#2426 @vedadeepta)
Changed
- [Docs]
prefer-es6-class
: Fix typos (#2425 @spencerbyw)
7.15.0 - 2019-09-30
Added
- add
jsx-no-useless-fragment
rule (#2261 @golopot) - [
jsx-handler-name
][]: allowfalse
to disableeventHandlerPrefix
/eventHandlerPropPrefix
(#2410 @tanmoyopenroot) sort-comp
: addstatic-variables
grouping (#2408 @vedadeepta)jsx-no-literals
: AddallowedStrings
option (#2380 @benhollander)no-multi-comp
: Added handling forforwardRef
andmemo
wrapping components declared in the same file (#2184 @jenil94)jsx-pascal-case
:allowAllCaps
option now allowsSCREAMING_SNAKE_CASE
(#2364 @TylerR909)
Fixed
jsx-indent
: Fix false positive when a jsx element is the last statement within a do expression (with tests) (#2200 @Kenneth-KT)jsx-curly-brace-presence
: fix jsx tags in braces (#2422 @tanmoyopenroot)display-name
: Fix false positives (#2399 @BPScott)jsx-curly-brace-presence
: report unnecessary curly braces with children on next line (#2409 @vedadeepta)no-unused-prop-types
: false positive with callback (#2375 @golopot)- Fix prop-types detection collision on renamed props (#2383 @yannickcr)
jsx-sort-props
: use localeCompare rather than comparison operator (#2391 @tanmoyopenroot)jsx-pascal-case
: allow one-letter-named components (#2395 @Haegin)jsx-wrap-multilines
: fix incorrect formatting (#2392 @tanmoyopenroot)require-optimization
: fix when using arrow function in class components (#2385 @jenil94)no-deprecated
: Deprecate cWM/cWRP/cWU lifecycle methods since React 16.9.0 (#2378 @meowtec)jsx-key
: improve docs and confusing error message (#2367 @kaykayehnn)- Recognize props wrapped in flow $ReadOnly<> utility type (#2361 @lukeapage)
prop-types
: false positive with setState updator (#2359 @golopot)
Changed
- [Docs]
no-access-state-in-setstate
: update grammar ([#2418][] @neaumusic) jsx-curly-brace-presence
,jsx-one-expression-per-line
,no-danger-with-children
: addisWhiteSpaces
tolib/util/jsx
(#2409 @vedadeepta)
7.14.3 - 2019-07-23
Fixed
- Fix
prop-types
to ignore validation when Flow indexers are used (#2330 @yannickcr) - Fix error being thrown after the first warning when react version cannot be detected (#2336 @abhishekdev)
- Fix component detection when
memo
andforwardRef
are used together (#2349 @yannickcr)
Changed
- Documentation improvements (@ljharb, #2354 @golopot)
7.14.2 - 2019-06-24
Fixed
- Fix
prop-types
crash on for...of destructuring (#2326 @yannickcr)
7.14.1 - 2019-06-24
Fixed
- Fix
prop-types
crash on multiple destructuring (#2319 @golopot)
7.14.0 - 2019-06-23
Added
- Add
jsx-curly-newline
rule (#1493 @golopot) - Add support for nested destructuring to
prop-types
(#296 #1422 @golopot) - Add support for variables defined as props to
prop-types
andno-unused-prop-types
(#442 #833 #1002 #1116 #1257 #1764 @golopot) - Add
checkFragmentShorthand
option tojsx-key
(#2316 @kaykayehnn)
Fixed
- Fix
no-did-mount-set-state
andno-did-update-set-state
to handle cDU and cDM defined as class properties (#1595 @jaaberg) - Fix
sort-prop-types
cash when a shape PropType is defined in a variable (#1749 @alexzherdev) - Fix
no-unused-state
false positive when using state of non-lifecycle method (#2274 @golopot) - Fix
static-property-placement
false positive when accessing static property inside method (#2283 @dmason30) - Fix [
prop-type
][] detection for annotated props with default value (#2298 @yannickcr)
Changed
- Add ESLint 6.0.0 as valid peerDependency (@yannickcr)
- Improve
no-render-return-value
performance (#2259 @golopot) - Change
jsx-sort-props
to report errors only on the identifier (#2312 @MrHen) - Change to warn only once if react version cannot be detected (#2276 @ljharb)
- Documentation improvements (#2263 @dimitropoulos, #2262 @ybiquitous, #2295 @battaglr, #2302 @Jason-Cooke, #2303 @golopot)
- Code refactoring (#2265 #2267 #2286 #2294 @golopot, @ljharb)
- Tests improvements (#2304 #1047 @golopot, @yannickcr)
7.13.0 - 2019-05-03
Added
- Make
jsx-sort-props
fully fixable (#2250, @guliashvili) boolean-prop-naming
: addvalidateNested
option to validate shape prop names (#2234, @pawelnvk)- add
static-property-placement
rule (#2193, @dmason30) - add "detect" for flow version (#2233, @jedwards1211)
jsx-indent
: AddindentLogicalExpressions
option (#2227, @mdnsk)- add
jsx-props-no-spreading
(#2191, @ashbhir) no-string-refs
: AddednoTemplateLiteral
option (#2167, @jenil94)- add
linkComponents
setting (#2116, @gbakernet) jsx-no-target-blank
: add support forlinkComponents
setting (#2116, @gbakernet)- Add
state-in-constructor
rule (#1945, @lukyth) - Add
prefer-read-only-props
rule (#2110, @golopot) no-unescaped-entities
: more friendly error message; add config to adjust (#2016, @stevemao)
Fixed
jsx-props-no-multi-spaces
: support generic components (ts) (#2256, @mateuszsokola)prop-types
: fix case with destructuring and default param (#2246, @golopot)prefer-stateless-function
: Ignoring pure components without props and context usage (#2238, @pawelnvk)propTypes
: resolveSuperParameterPropsType: add null check (#2232, @jedwards1211)self-closing-comp
: stop reporting single-line spaces (#2210, @golopot)require-render-return
: more accurate report location (#2229, @golopot)sort-prop-types
: Fix sorting props with numeric keys (#2230, @pawelnvk)display-name
: fix false negative around nested functions (#2225, @dwelle)no-unknown-property
: fix case like<Foo.bar>
(#2207, @golopot)jsx-curly-brace-presence
: accept multiline template string (#2203, @golopot)jsx-one-expression-per-line
: fix when using tabs (#2198, @Ohar)prop-types
: Fix false positive on computed member expression (#2202, @golopot)jsx-sort-default-props
: fix case with spread (#2182, @VincentLanglet)no-this-in-sfc
: Fix false positive on SFC defined as object property (#2147, @yannickcr)sort-comp
: correctly recognize instance variables declared without explicit value (#2183, @yannickcr)no-unused-state
: fix set state callback destructing & state use inside callback ([#2151][], @barakyosi)no-multi-comp
: correctly ignore wrapped stateless components: (#2145, @yannickcr)display-name
: avoid crash on for..of (#2137, @ljharb)
Changed
- [Docs]
no-access-state-in-setstate
: Use syntax highlighting for examples ([#2160][], @pReya) - [Docs]
jsx-fragments
: add "fixable" note (#2143, @joshunger) - [Docs] Added shared settings info, React version default note (#2180, @samsch)
- [Tests]
jsx-curly-spacing
: add regression test case (#2206, @ColCh)
7.12.4 - 2019-01-16
Fixed
no-unused-prop-types
: avoid a crash (#2131, @ljharb)prop-types
: avoid further crashes from nonexistent nodes in unusedPropTypes (#2127, @ljharb)prop-types
: Read name of callee object (#2125, @CrOrc)prop-types
: Ignore reassignments when matching props declarations with components (#2051, #1957, @yannickcr)prop-types
,no-unused-prop-types
,require-default-props
: Detect components with return statement in switch/case (#2118, @yannickcr)
Changed
7.12.3 - 2019-01-04
Fixed
jsx-indent
: Prevent crash on valueless props (#2120, @jomasti)jsx-fragments
: avoid crashing on self-closing fragments (#2113, @alexzherdev)no-unused-prop-types
: Fix propType detection inside class bodies (#2115, @drx)no-unused-prop-types
: fix issue with propTypes misclassifying props (#2111, @drx)display-name
: fix false positive forReact.memo
(#2109, @jomasti)
Changed
- [Docs] add a missing comma in the JSON settings (#2117, @haideralsh)
- [Docs] update README to document React version detection (#2114, @mohsinulhaq)
7.12.2 - 2019-01-02
Fixed
prop-types
: avoid crash on used prevProps (#2095, @ljharb)- Version warning: Link does not end with '.' (#2103, @yoyo837))
forbid-prop-types
: fix crash with propWrapper check on MemberExpressions (#2104, @ljharb)
7.12.1 - 2019-01-01
Fixed
no-unused-state
: Fix crash with class fields (#2098, @jomasti)prop-types
: Fix false positives inside lifecycle methods (#2099, @jomasti)jsx-max-depth
: avoid a crash (#2102, @ljharb)jsx-wrap-multilines
: avoid crash when no trailing newline (#2100, @ljharb)
Changed
- Fix CHANGELOG.md (#2097, @alexzherdev)
7.12.0 - 2018-12-27
Added
no-typos
: Support createClass (#1828, @alexzherdev)- Support detecting React.forwardRef/React.memo (#2089, @jomasti)
jsx-indent
: addcheckAttributes
option for JSX attribute indentation (#2086, @jomasti)- Change allowed
propWrapperFunctions
setting values (#2065, @jomasti) - add
jsx-fragments
rule to enforce fragment syntax (#1994, @alexzherdev) - Support "detect" option for React version setting (#1978, @alexzherdev)
- Support shorthand fragment syntax in many rules (#1956, @alexzherdev)
jsx-no-literals
: print node value in warning message (#2008, @jlgonzalezdev)
Fixed
jsx-max-depth
: Fix depth of JSX siblings in a JSXEpressionContainer (#1824, @alexzherdev)no-array-index-key
: fix in React.Children methods (#2085, @himynameisdave)no-unused-state
: handle functional setState (#2084, @jomasti)- version errors should log to stderr, not stdout (#2082, @ljharb)
no-deprecated
: Disable legacy lifecycle methods linting for now (#2069, @sergei-startsev)- ensure that react and flow versions can be numbers (#2056, @ljharb)
forbid-foreign-prop-types
: ensureallowInPropTypes
option applies to class fields (#2040, @Sheile)jsx-wrap-multilines
: catch single missing newlines (#1984, @MrHen)jsx-first-prop-new-line
: Fix for parsers (like TypeScript) (#2026, @HauptmannEck)sort-comp
: Fix fixer in case of more than 10 props (#2012, @tihonove)no-unused-state
Don't depend on state parameter name (#1829, @alexzherdev)no-this-in-sfc
fix for class properties (#1995, @sergei-startsev)no-this-in-sfc
fix rule behavior for arrow functions inside a class field (#1989, @sergei-startsev)destructuring-assignment
: handle nested props usage (#1983, @alexzherdev)sort-prop-types
: fix string property order (#1977, @metreniuk)jsx-no-target-blank
: don’t crash when there’s no value (#1949, @ljharb)prop-types
,no-unused-prop-types
: better handle object spread (#1939, @alexzherdev)
Changed
jsx-fragments
: improve message text (#2032, @alexzherdev)no-unsafe
: handle all unsafe life-cycle methods (#2075, @sergei-startsev)require-default-props
: Change error message naming from singular defaultProp to plural defaultProps (#2064, @jseminck)- [Refactor] Extract used
propTypes
detection (#1946, @alexzherdev) - [Refactor] Extract
defaultProps
detection (#1942, @alexzherdev) - [Refactor] Extract required
propTypes
detection (#2001, @alexzherdev) - [Docs]
no-did-mount-set-state
,no-did-update-set-state
,no-will-update-set-state
: fix docs URLs (#2090, @JBallin) - [Docs] Remove statement on GC in jsx-no-bind (#2067, @rickhanlonii)
- [Docs]
jsx-sort-props
: Fix small mistake (#2044, @dimitarnestorov) - [Docs]
no-unescaped-entities
: add more escape examples (#2015, @stevemao) - [Docs]
display-name
: mention defaultignoreTranspilerName
value (#2002, @OliverJAsh) - [Docs]
jsx-no-target-blank
: Add full example (#1988, @atomcorp) - [Docs] Update
jsx-no-target-blank
.md (#1953, @brunocoelho) - [Changelog] fix "Ignore class properties" contributor (#1941, @alexzherdev)
- [Tests] Remove redundant
require('babel-eslint')
from tests (#2004, @sergei-startsev) - [Tests]
prop-types
: Add tests for prop-types destructuring (#2029, @sstern6) - [Tests]
display-name
: add false positive component detection for destructured createElement (#1098, @arian)
7.11.1 - 2018-08-14
Fixed
- stop crashing when assigning to propTypes (#1932, @alexzherdev)
Changed
7.11.0 - 2018-08-13
Added
jsx-one-expression-per-line
: add "allow" option (#1924, @alexzherdev)sort-prop-types
: add autofix (#1891, @finnp)jsx-no-bind
: Add ignoreDOMComponents option (#1868, @alexzherdev)- Output a warning if React version is missing in settings (#1857, @alexzherdev)
Fixed
destructuring-assignment
: Ignore class properties (#1909, @alexandernanberg)destructuring-assignment
, component detection: ignore components with confidence = 0 (#1907, @alexzherdev)boolean-prop-naming
: Handle inline Flow type (#1905, @alexzherdev)jsx-props-no-multi-spaces
: Handle member expressions (#1890, @alexzherdev)sort-comp
: Allow methods to belong to any matching group (#1858, @nosilleg)jsx-sort-props
: FixreservedFirst
(#1883, @fleischie)prop-types
: (flow) Stop crashing on undefined or null properties (#1860, @nicholas-l)no-unknown-property
: Make attribute "charset" valid (#1863, @silvenon)no-deprecated
: report identifier AST node instead of the class node (#1854, @jsnajdr)button-has-type
: Account for pragma (#1851, @alexzherdev)button-has-type
: improve error message when an identifier is used as the value (#1874, @ljharb)- support JSXText nodes alongside Literal nodes (@ljharb)
Changed
- Extract propTypes detection code (#1911, @alexzherdev)
- Fix broken links in changelog (#1849, @alexzherdev)
no-unused-state
: combine spread visitors (@ljharb)jsx-one-expression-per-line
: Fix JSX Syntax in docs (#1867, @peter-mouland)jsx-max-depth
,jsx-sort-default-props
: add missing docs urls (#1880, @flyerhzm)jsx-indent
: add test cases (#1892, @alexzherdev)prop-types
: add test cases (#1898, @alexzherdev)- Add a helper function for determining function-like expressions (#1914, @alexzherdev)
jsx-props-no-multi-spaces
: update docs (#1918, @BenRichter)
7.10.0 - 2018-06-24
Added
- Allow eslint ^5 (#1843 @papandreou, @ljharb)
no-unsafe
rule (#1831, #1830 @sergei-startsev)no-will-update-set-state
: Account forUNSAFE_
methods (#1845, #1844 @alexzherdev)
Fixed
no-typos
: Fix static propTypes handling (#1827, #1677 @alexzherdev)destructuring-assignment
: Allow LHS (#1825, #1728 @alexzherdev)no-unused-prop-types
: Fix crash when encountering mixed union and intersection flow types (#1806 @yannickcr)
Changed
- Typo fixes in
jsx-no-target-blank
(#1805 @ferhatelmas))
7.9.1 - 2018-06-03
- Nothing was fixed; this is a republish with some updated deps. (#1804 @ljharb)
7.9.0 - 2018-06-03
Added
- Add
jsx-props-no-multi-spaces
rule (#1755 @ThiefMaster) - Add
first
option tojsx-indent-props
(#398 @ThiefMaster) - Add
enforceDynamicLinks
option tojsx-no-target-blank
(#1737 @kenearley)
Fixed
- Fix static lifecycle methods validation in
sort-comp
(#1793 @lynxtaa) - Fix crash in
no-typos
when encountering anonymous react imports (#1796 @jsg2021) - Fix ESLint 3 support (#1779)
Changed
- Documentation improvements (#1794 @lencioni)
- Update Travis CI configuration to test on multiple ESLint verions
7.8.2 - 2018-05-13
Fixed
- Fix crash in
boolean-prop-naming
when encountering a required shape prop type (#1791 @pcorpet)
7.8.1 - 2018-05-12
Fixed
- Fix crash in
no-deprecated
when encountering a class constructor (#1785 @taddei)
7.8.0 - 2018-05-11
Added
- Add support for fragments to
react-in-jsx-scope
(#1758) - Add support for Flow generic PropType to
require-default-props
(#1724 @Miziak) - Add component whitelist option to
forbid-component-props
(#1732 @ThiefMaster) - Add support for React 16.3 lifecycle methods to
no-unused-prop-types
(#1681 @bvaughn) - Add support for React 16.3 lifecycle methods to
sort-comp
(#1767 @joe-denea) - Add support for React 16.3 lifecycle methods to
no-typos
- Add support for
prevState
andnextState
tono-unused-state
(#1759) - Add warnings for
componentWillMount
,componentWillReceiveProps
andcomponentWillUpdate
lifecycle methods inno-deprecated
(#1750 @sergei-startsev)
Fixed
- Fix
no-typos
false positive on customPropType
classes (#1389 @brettdh) - Fix
boolean-prop-naming
to handle required props (#1389 @louisscruz) - Fix
jsx-curly-brace-presence
to allow whitespace JSX container (#1717 @sharmilajesupaul) - Fix
jsx-no-bind
to handle ternary conditions (#1722 @gwenaellarmet)
Changed
- Documentation improvements (#1699 @ronanmathew, #1743 @ybiquitous, #1753 @awthwathje, #1783 @chentsulin, #1703 @ferhatelmas)
7.7.0 - 2018-02-19
Added
forbid-foreign-prop-types
: addallowInPropTypes
option (#1655 @iansu)- Add
jsx-max-depth
rule (#1260 @chriswong)
Fixed
no-access-state-in-setstate
: Exclude references to this.state in setState callback (#1610 @pfhayes)no-danger-with-children
: prevent infinite loop (#1571 @ljharb)sort-prop-types
: Fix sortShapeProp when shape is not an object literal (#1669 @justinanastos)jsx-child-element-spacing
: fix error location (#1666 @pfhayes)no-unused-prop-types
: fix for createClass (#1675 @yuri-sakharov)prop-types
: include nextProps checking in shouldComponentUpdate (#1690 @amerryma)jsx-curly-spacing
: refactor to fix start and end-braces in a single pass (#1414 @s-h-a-d-o-w)
Changed
jsx-child-element-spacing
: add missing docs (#1665 @pfhayes); fix docs (#1670 @SammyM)
7.6.1 - 2018-01-28
Fixed
- Flow: fix crash in
prop-types
with recursive type annotations (#1653 @jetpacmonkey) - Fix
no-unknown-property
to properly recognizecrossOrigin
instead ofcrossorigin
, and allow it onlink
tags. (#1659 @jzDev) - Fix
no-access-state-in-setstate
to handle object spread (#1657 @ljharb)
7.6.0 - 2018-01-25
Added
- Add
forbid-dom-props
rule (#1562 @davazp) - Add
jsx-child-element-spacing
rule (#1515 @pfhayes) - Add
no-this-in-sfc
rule (#1435 @jomasti) - Add
jsx-sort-default-props
rule (#281 @b0gok) - Add
message
option toboolean-prop-naming
(#1588 @louisscruz) - Add
beforeClosing
option tojsx-tag-spacing
(#1396 @cjskillingstad) - Add
instance-methods
andinstance-variables
tosort-comp
(#599 @RDGthree) - Add
propWrapperFunctions
support forboolean-prop-naming
(#1478 @jomasti) - Add warning for
React.addons.TestUtils
inno-deprecated
(#1644 @nirnaor) - Add URL to rule documentation to the rules metadata (#1635 @Arcanemagus)
Fixed
- Fix crashes in
no-access-state-in-setstate
(#1559 @jomasti, #1611 @pfhayes) - Fix crash in
require-optimization
when encountering arrays with empty items as values in object (#1621 @kamataryo) - Fix crash in
no-unused-prop-types
when passing an empty function as a PropType (#1542 #1581 @kevinzwhuang) - Fix crash in
no-typos
when usingPropType.shape
without arguments (#1471 @mrichmond) - Fix crash when using Unions in flow propTypes (#1468 @justinanastos)
- Fix missing meta in
jsx-tag-spacing
(#1650 @flyerhzm) - Fix
no-unused-state
to detect usage ofthis.state
as an object (#1572) - Fix
no-access-state-in-setstate
to detect when thestate
variable is destructured fromthis.state
(#1597 @jaaberg) - Fix
jsx-no-literals
to correctly find string literals part of BinaryExpressions (#1511 @jaaberg) - Fix
no-typos
false positive on custom propTypes with isRequired (#1607 @lfades) - Fix
prop-types
to check fornextProps
incomponentWillReceiveProps
(#1636 @xjmdoo) - Fix
no-unknown-property
to not pascal-casingcrossorigin
attribute and only allow it on script/img/video (#1642 @ljharb)
Changed
- Improve
jsx-wrap-multilines
auto fix (#1576 @sharmilajesupaul) - Export
defaultConfig
fromsort-comp
rule for programmatic use (#1578 @Andarist) - Documentation improvements (#1552 @TSMMark, #1566 @lukeapage, #1624 @alexilyaev, @ljharb)
- Update dependencies (@ljharb)
7.5.1 - 2017-11-19
Fixed
- Fix
jsx-no-bind
crash (#1543 @jomasti) - Fix
no-unused-prop-types
crash (#1542 @jomasti)
Changed
- Documentation improvements (#1546 @jseminck)
7.5.0 - 2017-11-18
Added
- Add
jsx-one-expression-per-line
rule (#1497 @TSMMark) - Add
destructuring-assignment
rule (#1462 @DianaSuvorova) - Add
no-access-state-in-setstate
rule (#1374 @jaaberg) - Add
button-has-type
rule (#1525 @Hypnosphi) - Add warnings for
React.DOM
factories inno-deprecated
(#1530 @backjo) - Add
sortShapeProp
option tosort-prop-types
(#1476 @jomasti) - Add
parens-new-line
option tojsx-wrap-multilines
(#1475 @jomasti) - Add
checkContextTypes
andcheckChildContextTypes
options toforbid-prop-types
(#1533 @jomasti) - Add
forbidDefaultForRequired
option torequire-default-props
(#1524 @jomasti) - Add new nodes support to
jsx-wrap-multilines
(#1384 @evgeny-petukhov)
Fixed
- Fix
jsx-curly-brace-presence
auto fix by bailing out when some chars exist (#1479 #1449 @jackyho112) - Fix
boolean-prop-naming
crash with Object spread (#1485 @track0x1) - Fix
no-unused-state
to correctly handle arrow function class method (#1363 @jackyho112) - Fix incompatibility with
typescript-eslint-parser
(#1496 @timothykang) - Fix
jsx-no-bind
to only warn for props and account for variable declaration (#1444 #1395 #1417 @jackyho112) - Fix
no-unused-prop-types
to handle props usage in custom prop validators (#1518 @petersendidit) - Fix
prefer-stateless-function
to account forcontextTypes
anddefaultProps
(#1521 @jomasti) - Fix
jsx-no-comment-textnodes
to not warn when using two slashes via html entities at the beginning of a literal (#1517 @jomasti) - Fix
default-props-match-prop-types
crash (#1499 @jomasti) - Fix
no-unused-prop-types
to handle props used in thesetState
update callback (#1507 @petersendidit) - Fix alignment bug in
jsx-indent
(#1246 @jseminck)
Changed
- Documentation improvements (#1438 @jseminck, #1464 @AlaaAttya, #1494 @piperchester, #1467 @felicio, #1512 @adam-golab)
- Code refactoring (#1423 #1398 @jseminck, #1500 #1514 @Aladdin-ADD, #1502 @SimenB, #1508 #1526 @jomasti, @ljharb)
- Update dependencies (#1450 @leebyron, @ljharb)
7.4.0 - 2017-09-24
Added
- Add Flow 0.53 support (#1376 @jseminck)
- Add
jsx-curly-brace-presence
rule (#1310 @jackyho112) - Add support for Flow IntersectionTypeAnnotation to
prop-types
andno-unused-prop-types
(#1364 #1323 @jseminck) - Add support for Flow TypedArgument to
no-unused-prop-types
(#1412 @jseminck) - Add support for Flow ClassExpressions to
prop-types
(#1400 @jseminck) - Add support for Flow read-only props to
no-unused-prop-types
(#1388 @jseminck) - Add more tests for
prop-types
andno-unused-prop-types
(#1381 @DianaSuvorova) - Add support for increment and decrement operations to
no-direct-mutation-state
(#1386 @zpao)
Fixed
- Fix
no-unused-state
to ignore computed property keys (#1361 @jackyho112) - Fix
no-typos
crash (#1406 @jseminck) - Fix
boolean-prop-naming
crash (#1409 @EvHaus) - Fix
prop-types
andno-unused-prop-types
crash with IntersectionTypeAnnotation (#1413 @jseminck)
Changed
7.3.0 - 2017-08-21
Added
Fixed
- Fix
boolean-prop-naming
crash (#1369 @EvHaus) - Fix
no-typos
crash (#1353 @jseminck) - Fix
require-default-props
stopping when it finds a component without props (#1380 @brgibson) - Fix
no-direct-mutation-state
detection with nested components (#1382)
Changed
- Documentation improvements (#1383 @mjomble)
7.2.1 - 2017-08-14
Fixed
- Fix
forbid-prop-types
crash on identifiers (#1352 @ljharb) - Fix
boolean-prop-naming
crash with propTypes wrapper (#1354 @dustinsoftware) - Fix
prop-types
false positive with local variableprops
(#1288 @DianaSuvorova) - Fix wrapped propTypes detection (#1366)
Changed
- Documentation improvements (#1123 @penx)
7.2.0 - 2017-08-09
Added
- Add
no-unused-state
rule (#1103 @wbinnssmith) - Add
boolean-prop-naming
rule (#1264 @EvHaus) - Add
no-typos
rule (#1189 @jseminck, #1294 @haridusenadeera) - Add auto fix for
jsx-sort-props
(#1273 @Overload119) - Add
getters
andsetters
groups tosort-comp
(#100 @RDGthree) - Add
noStrings
option tojsx-no-literals
(#1202 @deecewan) - Add inverse option for
always
/never
tojsx-boolean-value
(#1249 @ljharb)
Fixed
- Fix
no-direct-mutation-state
to disallowthis.state
mutation in constructor (#832 @burabure) - Fix
jsx-no-target-blank
crash on emptyrel
attribute (#1269 @dustinsoftware) - Fix
sort-comp
component detection withClassExpression
(#1076 @webOS101) - Fix
no-unused-prop-types
detection with async class properties and methods (#1053 @benstepp) - Fix
void-dom-elements-no-children
crash (#1226 @kokobeware) - Fix
no-danger-with-children
to ignore line breaks (#1262) - Fix
no-danger-with-children
crash with undefined (#1287) - Fix
jsx-no-target-blank
crash (#1296 @jseminck) - Fix
no-unused-prop-types
to no longer ignore components with no used props (#1303 @DianaSuvorova) - Fix
jsx-no-duplicate-props
crash (#969 @marcelmokos) - Fix
jsx-no-literals
false positives (#1301 @davidyorr) - Fix
no-find-dom-node
detection with named imports (#785 @Hypnosphi) - Fix proTypes-related rules detection with wrapped propTypes (#1266 @dustinsoftware)
- Fix
no-unused-prop-types
detection with propTypes wrapped in a function (#1253 @dustinsoftware) - Fix
no-unused-prop-types
detection with destructured use of properties (#816 @DianaSuvorova) - Fix
no-unused-prop-types
detection with inline functions (#1309 @DianaSuvorova) - Fix
no-unused-prop-types
skipShapeProps
option with Flow annotations (#1335 @DianaSuvorova) - Fix
jsx-curly-spacing
schema incompatibility with ESLint 4.2.0 (#1290 @jseminck)
Changed
- Documentation improvements (#1261 @mminer, #1005 @yooungt13, #1289 @konekoya, #1308 @xcatliu, #1306 @egberts, #1329 #1344 @DianaSuvorova)
- ES6-ify codebase (#1274 #1277 #1281 @dfilipidisz)
- Code refactoring (@ljharb)
- Update Travis CI and AppVeyor CI configurations (@lencioni)
7.1.0 - 2017-06-13
Added
- Add
default-props-match-prop-types
rule (#1022 @webOS101) - Add
no-redundant-should-component-update
rule (#985 @jomasti) - Add
jsx-closing-tag-location
rule (#1206 @rsolomon) - Add auto fix for
jsx-max-props-per-line
(#949 @snowypowers) - Add support for lifecycle methods with
nextProps
/prevProps
inno-unused-prop-types
(#1213 @jseminck) - Add Flow SuperTypeParameters support to
prop-types
(#1236 @gpeal) - Add
children
option tojsx-curly-spacing
(#857 @fatfisz)
Fixed
- Fix
prefer-stateless-function
ignorePureComponents
option when using class expressions (#1122 @dreid) - Fix
void-dom-elements-no-children
crash (#1195 @oliviertassinari) - Fix
require-default-props
quoteddefaultProps
detection (#1201) - Fix
jsx-sort-props
bug withignoreCase
andcallbacksLast
options set totrue
(#1175 @jseminck) - Fix
no-unused-prop-types
false positive (#1183 #1135 @jseminck) - Fix
jsx-no-target-blank
to not issue errors for non-external URLs (#1216 @gfx) - Fix
prop-types
quoted Flow types detection (#1132 @ethanjgoldberg) - Fix
no-array-index-key
crash withkey
without value (#1242 @jseminck)
Changed
- Set ESLint 4.0.0 as valid peerDependency
- Dead code removal (#1227 @jseminck)
- Update dependencies (@ljharb)
- Documentation improvements (#1071 @adnasa, #1199 @preco21, #1222 @alexilyaev, #1231 @vonovak, #1239 @webOS101, #1241 @102)
7.0.1 - 2017-05-13
Fixed
- Fix
jsx-curly-spacing
allowMultiline
option being undefined in some cases (#1179 @fatfisz) - Fix
jsx-curly-spacing
newline with object literals bug (#1180 @fatfisz) - Fix
prop-types
to not mark class static function as valid propTypes definition (#1174) - Fix
prop-types
crash with Flow spread operator (#1178) - Fix
void-dom-elements-no-children
crash on faultycreateElement
detection (#1101) - Fix
require-default-props
error message for quoted props (#1161)
Changed
7.0.0 - 2017-05-06
Added
- Add
no-will-update-set-state
rule (#1139 @ManThursday) - Add import and destructuring support to
no-deprecated
- Add
reservedFirst
option tojsx-sort-props
(#1134 @MatthewHerbst)
Breaking
- Update rules for React 15.5.0:
- Add warnings for
React.PropTypes
andReact.createClass
inno-deprecated
(#1148 @Calyhre) - Update
createClass
component factory tocreateReactClass
. This is used for React component detection, if you still usingReact.createClass
use the shared settings to specifycreateClass
as component factory
- Add warnings for
- Drop Node.js < 4 support (#1038 @ljharb)
- Add
no-danger-with-children
rule to recommended rules (#748 @ljharb) - Add
no-string-refs
rule to recommended rules (#749 @ljharb) - Add
jsx-key
rule to recommended rules (#750 @ljharb) - Add
jsx-no-comment-textnodes
rule to recommended rules (#751 @ljharb) - Add
jsx-no-target-blank
rule to recommended rules (#752 @ljharb) - Add
no-unescaped-entities
rule to recommended rules (#841 @ljharb) - Add
no-children-prop
rule to recommended rules (#842 @ljharb) - Remove deprecated
wrap-multilines
rule, usejsx-wrap-multilines
instead - Remove deprecated
no-comment-textnodes
rule, usejsx-no-comment-textnodes
instead - Remove deprecated
require-extension
rule, use the eslint-plugin-importextensions
rule instead - Deprecate
jsx-space-before-closing
rule, use thejsx-tag-spacing
rule instead.jsx-space-before-closing
still works but will trigger a warning (#1070 @afairb) jsx-first-prop-new-line
default is nowmultiline-multiprop
(#802 @kokarn)jsx-wrap-multilines
now checks arrow functions without block body. It can be deactivated in rule options (#790 @ColCh)jsx-no-undef
will not check the global scope by default. You can force it with theallowGlobals
option (#1013 @jomasti)
Fixed
- Fix
no-unused-prop-types
false positive withnextProps
(#1079 @Kerumen) - Fix
prefer-stateless-function
to not warn on classes with decorators (#1034 @benstepp)
Changed
- Update dependencies (#1119 @danez)
- Documentation improvements (#1121 @omerzach, #1130 @dreid, #1131 @shoesandsocks, #1149 @Adzz, #1151 @MatthewHerbst, #1167 @Slumber86)
6.10.3 - 2017-03-20
Fixed
- Revert #1057 due to issues with
jsx-indent
(#1117)
6.10.2 - 2017-03-19
Fixed
- Fix
jsx-indent
indentation calculation with nested JSX (#1117)
6.10.1 - 2017-03-19
Fixed
- Fix
jsx-indent
auto fix with tabs (#1057 @kentcdodds @webOS101) - Fix
jsx-indent
crash (#1061 @iancmyers) - Fix
void-dom-elements-no-children
crash and fix it to only checks for a createElement call from React (#1073 @jomasti) - Fix component detection that caused a false positive in
no-multi-comp
(#1088 @benstepp)
6.10.0 - 2017-02-16
Added
- Add
forbid-foreign-prop-types
rule (#696 @iancmyers) - Add
void-dom-elements-no-children
rule (#709 @lencioni) - Add
forbid-elements
rule (#887 @kentor) - Add
noSortAlphabetically
option tojsx-sort-props
(#541 #786 @markus101) - Add
when
option tojsx-max-props-per-line
(#878 @kentor) - Add support for
nextProps
toprop-types
(#814)
Fixed
- Fix
require-default-props
crash (#1029) - Fix
require-default-props
rule when using Flow type from assignment (#1043 @wyze @CarlRosell) - Fix
style-prop-object
to not warn with explicitnull
orundefined
(#812 @ljharb) - Fix
no-unused-prop-types
props detection in stateless components (#885 @BarryThePenguin) - Fix
display-name
false positive withdocument.createElement
(#996 @jomasti) - Fix ESLint 2 compatibility (@ljharb)
Changed
- Tests improvements (@ljharb)
- Documentation improvements (#958 @Jorundur, #1010 @amilajack, #1041 @EvNaverniouk, #1050 @lencioni, #1062 @dguo)
6.9.0 - 2017-01-08
Added
- Add support for variable reference to
sort-prop-types
(#622)
Fixed
- Fix Node.js 0.10 support (#1000 @ljharb)
- Fix
prop-types
to correctly assign props to components (#991)
Changed
- Documentation improvements (#995 @rutsky)
6.8.0 - 2016-12-05
Added
- Add
no-array-index-key
rule (#978 @lencioni) - Add
require-default-props
rule (#528 @vitorbal) - Add support for flow variance syntax to
prop-types
(#961 @ajhyndman)
Fixed
- Fix
jsx-indent
with multiline jsx in ternaries (#966) - Fix component detection to ignore async functions (#989 @taion)
- Fix
jsx-curly-spacing
autofix to not delete comments (#648) - Fix auto-enabling of
eslint-plugin-react
in exported configurations (#984 @jamischarles)
Changed
- Update dependencies
- Documentation improvements (#960 @evilebottnawi, #973 @JamesWatling, #982 @captbaritone)
6.7.1 - 2016-11-15
Fixed
- Fix
jsx-tag-spacing
crash when options object isn't passed (#955 @daltones)
6.7.0 - 2016-11-14
Added
- Add
jsx-tag-spacing
rule (#693 @Kovensky)
Fixed
- Fix
jsx-indent
for parenthesized ternaries (#945 @voxpelli) - Fix
jsx-indent
for multiline ternaries - Fix
jsx-indent
for arrays in jsx (#947) - Fix
no-danger-with-children
crash with spread on global variables (#921) - Fix
jsx-wrap-multilines
ternaries handling (#916)
Changed
- Enable
no-unused-prop-types
skipShapeProps
option by default to limit false positive (#953 @everdimension)
6.6.0 - 2016-11-06
Added
- Add
jsx-first-prop-new-line
auto fix (#886 @snowypowers)
Fixed
- Fix
no-unused-prop-types
crash with destructured prop-types (#938) - Fix
jsx-indent
in multi-line conditional expressions (#901, #907) - Fix
sort-comp
bad error message if 2 methods in the same group must be moved (#507)
Changed
- Documentation improvements (#941 @pwmckenna)
6.5.0 - 2016-11-01
Added
- Add tab support to
jsx-closing-bracket-location
auto fixer (#909 @arperry) - Add tab and space support to
jsx-indent
auto fixer (#608 @jayphelps) - Add
multiline-multiprop
option tojsx-first-prop-new-line
(#883 @kentor)
Fixed
- Fix
forbid-component-props
crash with self reference JSX element (#839 @xeodou) - Fix
jsx-indent
to ignore lines starting by literals (#900) - Fix
no-set-state
to correctly detectsetState
in arrow functions (#931)
Changed
- Update dependencies
- Add
deprecated
metadata to deprecated rules (#911 @randycoulman) - Auto-enable
eslint-plugin-react
in exported configurations (#925 @MoOx) - Documentation improvements (#910 @Wilfred, #932 @gnarf)
6.4.1 - 2016-10-10
Fixed
- Fix
jsx-indent
for arrays (#897, #898) - Fix
jsx-indent
to allow multi-line logical expressions with one level of indent (#896)
6.4.0 - 2016-10-09
Added
- Add
skipUndeclared
option toprop-types
(#846 @pfhayes)
Fixed
- Fix
jsx-no-bind
crash on arrow functions (#854) - Fix
display-name
false negative on es6-style method inReact.createClass
(#852) - Fix
prefer-stateless-function
to allow components withchildContextTypes
(#853) - Fix
no-children-prop
spread support (#862 @randycoulman) - Fix
no-unused-prop-types
to ignore validation when spread is used (#840) - Fix
jsx-closing-bracket-location
for multi-line prop (#889) - Fix
jsx-indent
in multi-line function calls (#895) - Fix
jsx-indent
in multi-line logical expressions (#540)
Changed
- Update dependencies
- Documentation improvements (#860 @fson, #863 @corydolphin, #830 @eelyafi, #876 @manovotny, #877 @gaearon)
6.3.0 - 2016-09-20
Added
- Add
no-children-prop
rule (#720 @benstepp) - Add
no-unescaped-entities
rule (#681 @pfhayes) - Add JSXExpressionContainer support to
jsx-indent
rule (#838 @eelyafi)
Fixed
- Fix
style-prop-object
crash (#834) - Fix
style-prop-object
false positive on computed properties (#820) - Fix
style-prop-object
to deal with null and spread props that can't be resolved (#809 #812 @petersendidit)
6.2.2 - 2016-09-15
Fixed
- Fix
no-unused-prop-types
crash (#825 @EvNaverniouk) - Fix
jsx-no-target-blank
crash (#821)
6.2.1 - 2016-09-13
Fixed
- Fix false positive in
no-unused-prop-types
(#792 @EvNaverniouk) - Fix
jsx-no-target-blank
to target only anchor elements (#793 @aduth) - Fix
jsx-no-target-blank
to be case insensitive #796 @dmnd) - Fix
jsx-uses-vars
shadowed variables handling (#799)
Changed
- Update dependencies
- Documentation improvements (@ljharb, #794 @dougshamoo, #813 @AndiDog, #815 @chris-vaszauskas)
6.2.0 - 2016-08-28
Added
- Add
no-unused-prop-types
rule (#226 @EvNaverniouk) - Add
style-prop-object
rule (#715 @petersendidit) - Add auto fix for
self-closing-comp
(#770 @pl12133) - Add support for
typeAnnotations
insort-comp
(#235 @dozoisch) - Add support for
PureComponent
inprefer-stateless-function
(#781 @tiemevanveen)
Fixed
- Fix
jsx-uses-vars
to work better withprefer-const
. You'll need to upgrade to ESLint 3.4.0 to completely fix the compatibility issue (#716) - Fix
require-render-return
crash (#784) - Fix related components detection in
prop-types
(#735) - Fix component detection to ignore functions expression without a parent component
Changed
- Update dependencies
- Documentation improvements (@lencioni)
6.1.2 - 2016-08-17
Fixed
- Fix nested spread handling in
no-danger-with-children
(#771 @petersendidit)
Changed
- Documentation improvements
6.1.1 - 2016-08-16
Fixed
- Fix
prop-types
on annotated components (#766) - Fix
no-danger-with-children
spread support (#767 @petersendidit)
Changed
- Documentation improvements (#769 @daltones)
6.1.0 - 2016-08-14
Added
- Add
React.PureComponent
support (#737) - Add
forbid-component-props
rule (#314 @lencioni) - Add
no-danger-with-children
rule (#710 @petersendidit) - Add pragma for
createClass
factory method (#725 @zurawiki)
Fixed
- Fix Node.js 0.10 support (#746)
- Fix
prop-types
on annotated components (#729) - Fix
require-optimization
test for function declaration (#744 @Tom910) - Fix
jsx-uses-vars
to handle nested object properties (#761 @yayalice) - Fix rules metadata
Changed
- Update dependencies
- Documentation improvements (#759 @embrown, #703 #753 @lencioni, #739 @ljharb, #731 @wKich, #745 @petersendidit, #659 @dguo)
6.0.0 - 2016-08-01
Added
- Add an
all
shareable configuration with all rules enabled (#674 @pfhayes) - Add
no-find-dom-node
rule (#678) - Add
shorthandLast
option tojsx-sort-props
(#391 @mathieumg) - Add
allowDecorators
option torequire-optimization
(#669 @Tom910)
Breaking
- Deprecate
require-extension
rule, use the eslint-plugin-importextensions
rule instead.require-extension
still works but will trigger a warning - Enable
allow-in-func
mode by default inno-did-mount-set-state
andno-did-update-set-state
rules (#702 @lencioni) - Enable html tags check by default in
self-closing-comp
- Remove
pragma
option fromjsx-uses-react
, use the shared settings to specify a custom pragma (#700 @lencioni) - Remove
react
option fromno-deprecated
rule, use the shared settings to specify the React version (#700 @lencioni) - Add
require-render-return
rule to recommended rules - Remove
no-danger
from recommended rules (#636 @mjackson) - Remove
no-did-mount-set-state
andno-did-update-set-state
from recommended rules (#596) - Remove deprecated
jsx-sort-prop-types
rule, usesort-prop-types
instead (#549 @lencioni) - Rename
no-comment-textnodes
tojsx-no-comment-textnodes
.no-comment-textnodes
still works but will trigger a warning (#668 @lencioni) - Rename
wrap-multilines
tojsx-wrap-multilines
.wrap-multilines
still works but will trigger a warning (#668 @lencioni) - Add ESLint as peerDependency (#657 @jokeyrhyme)
- Add Node.js 0.10 as minimum required version (#657 @jokeyrhyme)
Fixed
- Fix
jsx-handler-names
incorrectly flaggingonly
(#571 @lencioni) - Fix spread props cash in
jsx-no-target-blank
(#679 @randycoulman) - Fix
require-optimization
warning on stateless components (#687) - Fix
jsx-uses-vars
that incorrectly marked some variables as used (#694 @lencioni) - Fix
no-unknown-property
check on SVG attributes (#718) - Fix
jsx-no-bind
reporting errors on render functions that don't return JSX (#663 @petersendidit) - Fix
jsx-closing-bracket-location
autofix whenlocation
is set toprops-aligned
(#684 @pfhayes) - Fix
prop-types
for destructured arguments being assigned to the parent stateless component in some cases (#698) - Fix
prop-types
for JSX return being assigned to the parent function in some cases (#504) - Fix
jsx-curly-spacing
for reporting on JSX content by mistake (#671) - Fix
prop-types
crash when accessing constructor on props (#654) - Fix
jsx-filename-extension
to not check filenames on text input (#662 @ljharb) - Fix
jsx-no-comment-textnodes
incorrectly catching urls (#664 @petersendidit)
Changed
- Only report
jsx-filename-extension
warning once per file (#660 @mathieumg) - Update SVG and DOM attribute list for
no-unknown-property
- Update rules to use the new ESLint rule format (#661 @petersendidit)
- Update dependencies
- Documentation improvements (#724 @lencioni)
- Update Travis CI and AppVeyor CI configurations (@ljharb)
5.2.2 - 2016-06-17
Fixed
- Fix
jsx-no-bind
crash (#641)
5.2.1 - 2016-06-17
Fixed
- Fix
jsx-pascal-case
for namespaced components (#637 @evcohen)
5.2.0 - 2016-06-17
Added
- Add
require-optimization
rule (#240 @EvNaverniouk) - Add
jsx-filename-extension
rule (#495 @lencioni) - Add
no-render-return-value
rule (#531 @iamdustan) - Add
no-comment-textnodes
rule (#616 @benvinegar) - Add
objectLiterals
option tojsx-curly-spacing
(#388, #211 @casesandberg @ljharb) - Add option to
self-closing-comp
to check html tags (#572 @gitim) - Add
ignore
option tono-unknown-property
rule (#631 @insin) - Add support for ES7 bind operator to
jsx-handler-names
(#630) - Add support for explicit declaration that class extends React.Component (#68 @gausie)
Fixed
- Fix
jsx-closing-bracket-location
multiline prop support (#493 @tuures) - Fix
prop-types
for props that where not assigned to the right component (#591) - Fix
display-name
when JSON style is used for defining components (#590 @gitim) - Fix
jsx-no-bind
for bind detection in render when assigned to a variable (#474 @petersendidit) - Fix
jsx-curly-spacing
for spread operator (#606 @gitim) - Fix
sort-comp
crash on spread operator (#624) - Fix
prop-types
crash when destructuring props with spread only
Changed
- Update dependencies
- Add doctrine as a dependency (#68 @gausie)
- Add jsx-ast-utils as a dependency (#634 @evcohen)
- Documentation improvements (#594 @lencioni, #598 @mLuby, #633 @appsforartists)
5.1.1 - 2016-05-10
Fixed
- Fix
require-render-return
crash (#589)
5.1.0 - 2016-05-10
Added
- Add
jsx-no-target-blank
rule (#582 @Gasparila) - Add
allowAllCaps
andignore
options tojsx-pascal-case
(#575) - Add class properties support to
require-render-return
(#564)
Fixed
- Fix
jsx-closing-bracket-location
fixer (#533 @dtinth) - Fix
require-render-return
to only check valid render methods (#563) - Fix detection to allow simple
this
usage in fonctional components (#576) - Fix
forbid-prop-types
crash (#579) - Fix comment handling in
jsx-curly-spacing
(#584)
Changed
5.0.1 - 2016-04-18
Fixed
- Fix
require-render-return
to not check stateless functions (#550)
5.0.0 - 2016-04-17
Added
- Add
jsx-first-prop-new-line
rule (#410 @jseminck)
Breaking
- Update rules for React 15:
- Add warnings for
LinkedStateMixin
,ReactPerf.printDOM
andReactPerf.getMeasurementsSummaryMap
inno-deprecated
- Allow stateless components to return
null
inprefer-stateless-function
- Remove SVG attributes warnings (#490)
- Add warnings for
If you're still not using React 15 you can keep the old behavior by setting the React version to 0.14
in the shared settings.
Fixed
- Rewrite
require-render-return
rule (#542, #543) - Fix
prefer-stateless-function
crash (#544) - Fix external propTypes handling (#545)
- Do not mark inline functions in JSX as components (#546)
Changed
- Update dependencies
- Documentation improvements
4.3.0 - 2016-04-07
Added
- Add
require-render-return
rule (#482 @shmuga) - Add auto fix for
jsx-equals-spacing
(#506 @peet) - Add auto fix for
jsx-closing-bracket-location
(#511 @KevinGrandon)
Fixed
- Fix
prefer-stateless-function
for conditional JSX (#516) - Fix
jsx-pascal-case
to support single letter component names (#505 @dthielman)
Changed
4.2.3 - 2016-03-15
Fixed
- Fix class properties retrieval in
prefer-stateless-function
(#499)
4.2.2 - 2016-03-14
Fixed
- Rewrite
prefer-stateless-function
rule (#491) - Fix
self-closing-comp
to treat non-breaking spaces as content (#496) - Fix detection for direct props in
prop-types
(#497) - Fix annotated function detection in
prop-types
(#498) - Fix
this
usage injsx-no-undef
(#489)
Changed
- Update dependencies
- Add shared setting for React version
4.2.1 - 2016-03-08
Fixed
- Fix
sort-prop-types
crash with spread operator (#478) - Fix stateless components detection when conditionally returning JSX (#486)
- Fix case where props were not assigned to the right component (#485)
- Fix missing
getChildContext
lifecycle method inprefer-stateless-function
(#492)
4.2.0 - 2016-03-05
Added
- Add support for Flow annotations on stateless components (#467)
- Add
prefer-stateless-function
rule (#214) - Add auto fix for
jsx-indent-props
(#483 @shioju)
Fixed
- Fix
jsx-no-undef
crash on objects (#469) - Fix propTypes detection when declared before the component (#472)
Changed
- Update dependencies
- Documentation improvements (#464 @alex-tan, #466 @awong-dev, #470 @Gpx; #462 @thaggie)
4.1.0 - 2016-02-23
Added
- Add component detection for class expressions
- Add displayName detection for class expressions in
display-name
(#419)
Fixed
- Fix used props detection in components for which we are not confident in
prop-types
(#420) - Fix false positive in
jsx-key
(#456 @jkimbo)
Changed
- Documentation improvements (#457 @wyze)
4.0.0 - 2016-02-19
Added
- Add
jsx-space-before-closing
rule (#244 @ryym) - Add support for destructing in function signatures to
prop-types
(#354 @lencioni)
Breaking
- Add support for static methods to
sort-comp
. Static methods must now be declared first, see rule documentation (#128 @lencioni) - Add shareable config in place of default configuration.
jsx-uses-vars
is not enabled by default anymore, see documentation (#192) - Rename
jsx-sort-prop-types
tosort-prop-types
.jsx-sort-prop-types
still works but will trigger a warning (#87 @lencioni) - Remove deprecated
jsx-quotes
rule (#433 @lencioni) display-name
now accept the transpiler name by default. You can use theignoreTranspilerName
option to get the old behavior, see rule documentation (#440 @lencioni)
Fixed
- Only ignore lowercase JSXIdentifier in
jsx-no-undef
(#435) - Fix
jsx-handler-names
regex (#425) - Fix destructured props detection in
prop-types
(#443)
Changed
- Update dependencies (#426 @quentin-)
- Documentation improvements (#414 @vkrol, #370 @tmcw, #441 #429 @lencioni, #432 @note89, #438 @jmann6)
3.16.1 - 2016-01-24
Fixed
- Fix
jsx-sort-prop-types
issue with custom propTypes (#408 @alitaheri)
3.16.0 - 2016-01-24
Added
- Add
jsx-equals-spacing
rule (#394 @ryym) - Add auto fix for
wrap-multiline
- Add auto fix for
jsx-boolean-value
- Add auto fix for
no-unknown-property
- Add auto fix for
jsx-curly-spacing
(#407 @ewendel) - Add
requiredFirst
option tojsx-sort-prop-types
(#392 @chrislaskey) - Add
ignoreRefs
option tojsx-no-bind
(#330 @silvenon)
Fixed
- Ignore
ref
injsx-handler-names
(again) (#396)
Changed
- Update dependencies
3.15.0 - 2016-01-12
Added
- Add support for flow annotations to
prop-types
(#382 @phpnode)
Fixed
- Fix
prop-types
crash when initializing class variable with an empty object (#383) - Fix
prop-types
crash when propTypes are using the spread operator (#389)
Changed
3.14.0 - 2016-01-05
Added
- Add
jsx-indent
rule (#342) - Add shared setting for pragma configuration (#228 @NickStefan)
Fixed
- Fix crash in
jsx-key
(#380 @nfcampos) - Fix crash in
forbid-prop-types
(#377 @nfcampos) - Ignore
ref
injsx-handler-names
(#375)
Changed
- Add AppVeyor CI to run tests on a Windows platform
- Add
sort-comp
codemod tosort-comp
documentation (#381 @turadg)
3.13.1 - 2015-12-26
Fixed
3.13.0 - 2015-12-24
Added
- Add
no-string-refs
rule (#341 @Intellicode) - Add support for propTypes assigned via a variable in
prop-types
(#355)
Fixed
- Fix
never
option inprefer-es6-class
- Fix
jsx-key
false-positives (#320 @silvenon)
Changed
3.12.0 - 2015-12-20
Added
- Add
no-deprecated
rule (#356 @graue) - Add
no-is-mounted
rule (#37 @lencioni) - Add
never
option toprefer-es6-class
rule (#359 @pwmckenna)
Fixed
- Fix
jsx-pascal-case
to stop checking lower cased components (#329) - Fix crash in component detection class (#364)
Changed
- Add link to eslint-plugin-react-native in Readme
- Update dependencies
3.11.3 - 2015-12-05
Fixed
- Fix crash in
prop-types
when reassigning props (#345) - Fix
jsx-handler-names
for stateless components (#346)
Changed
- Update
jsx-handler-names
error messages to be less specific (#348 @jakemmarsh)
3.11.2 - 2015-12-01
Fixed
- Allow numbers in
jsx-pascal-case
(#339) - Fix
jsx-handler-names
crash with arrays (#340)
Changed
- Add
allow-in-func
option tono-did-update-set-state
documentation
3.11.1 - 2015-11-29
Fixed
- Fix SVG attributes support for
no-unknown-property
(#338)
3.11.0 - 2015-11-29
Added
- Add
jsx-handler-names
rule (#315 @jakemmarsh) - Add SVG attributes support to
no-unknown-property
(#318) - Add shorthandFirst option to
jsx-sort-props
(#336 @lucasmotta)
Fixed
- Fix destructured props detection in stateless components (#326)
- Fix props validation for nested stateless components (#331)
- Fix
require-extension
to ignore extension if it's part of the package name (#319)
Changed
- Allow consecutive uppercase letters in
jsx-pascal-case
(#328 @lencioni) - Update dependencies
3.10.0 - 2015-11-21
Added
- Add
jsx-pascal-case
rule (#306 @jakemmarsh)
Fixed
- Fix crash on incomplete class property declaration (#317 @dapetcu21)
- Fix crash with ESLint 1.10.0 (#323 @lukekarrys)
3.9.0 - 2015-11-17
Added
- Add
jsx-key
rule (#293 @benmosher) - Add
allow-in-func
option tono-did-update-set-state
(#300) - Add option to only enforce
jsx-closing-bracket-location
rule to one type of tag (nonEmpty or selfClosing) (#307)
Fixed
- Fix crash when destructuring with only the rest spread (#269)
- Fix variables detection when searching for related components (#303)
- Fix
no-unknown-property
to not check custom elements (#308 @zertosh)
Changed
- Improve
jsx-closing-bracket-location
error message (#301 @alopatin) - Update dependencies
3.8.0 - 2015-11-07
Added
- Add ignoreStateless option to
no-multi-comp
(#290)
Fixed
- Fix classes with properties to always be marked as components (#291)
- Fix ES5 class detection when using
createClass
by itself (#297) - Fix direct props detection (#298)
- Ignore functions containing the keyword
this
during component detection
3.7.1 - 2015-11-05
Fixed
- Fix
sort-comp
crash on stateless components (#285) - Fix crash in ES5 components detection (#286)
- Fix ES5 components detection from nested functions (#287)
3.7.0 - 2015-11-05
Added
- Add
jsx-no-bind
rule (#184 @Daniel15) - Add line-aligned option to
jsx-closing-bracket-location
(#243 @alopatin)
Fixed
- Fix a lot of issues about components detection, mostly related to stateless components (#264, #267, #268, #276, #277, #280)
Changed
- Update dependencies
3.6.3 - 2015-10-20
Fixed
- Fix
display-name
for stateless components (#256) - Fix
prop-types
props validation in constructor (#259) - Fix typo in README (#261 @chiedojohn)
3.6.2 - 2015-10-18
Fixed
- Fix wrong prop-types detection (#255)
3.6.1 - 2015-10-18
Fixed
- Fix props validation in constructor (#254)
3.6.0 - 2015-10-18
Added
- Add support for stateless function components to
display-name
andprop-types
(#237) - Add callbacksLast option to
jsx-sort-props
andjsx-sort-prop-types
(#242 @Daniel15) - Add
prefer-es6-class
rule (#247 @hamiltondanielb)
Fixed
- Fix
forbid-prop-types
crash with destructured PropTypes (#230 @epmatsw) - Fix
forbid-prop-types
to do not modify AST directly (#249 @rhysd) - Fix
prop-types
crash with empty destructuring (#251) - Fix
prop-types
to not validate computed keys in destructuring (#236)
Changed
3.5.1 - 2015-10-01
Fixed
- Fix
no-direct-mutation-state
to report only in React components (#229) - Fix
forbid-prop-types
for arrayOf and instanceOf (#230)
Changed
- Documentation improvements (#232 @edge)
3.5.0 - 2015-09-28
Added
- Add
no-direct-mutation-state
rule (#133, #201 @petersendidit) - Add
forbid-prop-types
rule (#215 @pwmckenna)
Fixed
- Fix no-did-mount/update-set-state rules, these rules were not working on ES6 classes
Changed
- Update dependencies
- Documentation improvements (#222 @Andersos)
3.4.2 - 2015-09-18
Fixed
- Only display the
jsx-quotes
deprecation warning with the default formatter (#221)
3.4.1 - 2015-09-17
Fixed
- Fix
jsx-quotes
rule deprecation message (#220)
3.4.0 - 2015-09-16
Added
- Add namespaced JSX support to
jsx-no-undef
(#219 @zertosh) - Add option to
jsx-closing-bracket-location
to configure different styles for self-closing and non-empty tags (#208 @evocateur)
Deprecated
- Deprecate
jsx-quotes
rule, will now trigger a warning if used (#217)
3.3.2 - 2015-09-10
Changed
- Add
state
in lifecycle methods forsort-comp
rule (#197 @mathieudutour) - Treat component with render which returns
createElement
as valid (#206 @epmatsw)
Fixed
- Fix allowed methods on arrayOf in
prop-types
(#146) - Fix default configuration for
jsx-boolean-value
(#210)
3.3.1 - 2015-09-01
Changed
- Update dependencies
- Update changelog to follow the Keep a CHANGELOG standards
- Documentation improvements (#198 @lencioni)
Fixed
- Fix
jsx-closing-bracket-location
for multiline props (#199)
3.3.0 - 2015-08-26
Added
- Add
jsx-indent-props
rule (#15, #181) - Add
no-set-state rule
(#197 @markdalgleish) - Add
jsx-closing-bracket-location
rule (#14, #64)
Changed
- Update dependencies
Fixed
- Fix crash on propTypes declarations with an empty body (#193 @mattyod)
3.2.3 - 2015-08-16
Changed
- Update dependencies
Fixed
3.2.2 - 2015-08-11
Changed
- Remove peerDependencies (#178)
3.2.1 - 2015-08-08
Fixed
- Fix crash when propTypes don't have any parent (#182)
- Fix jsx-no-literals reporting errors outside JSX (#183 @CalebMorris)
3.2.0 - 2015-08-04
Added
- Add
jsx-max-props-per-line
rule (#13) - Add
jsx-no-literals
rule (#176 @CalebMorris)
Changed
- Update dependencies
Fixed
- Fix object access in
jsx-no-undef
(#172)
3.1.0 - 2015-07-28
Added
- Add event handlers to
no-unknown-property
(#164 @mkenyon) - Add customValidators option to
prop-types
(#145 @CalebMorris)
Changed
- Update dependencies
- Documentation improvements (#167 @ngbrown)
Fixed
- Fix comment handling in
jsx-curly-spacing
(#165)
3.0.0 - 2015-07-21
Added
- Add jsx-no-duplicate-props rule (#161 @hummlas)
- Add allowMultiline option to the
jsx-curly-spacing
rule (#156 @mathieumg)
Breaking
- In
jsx-curly-spacing
braces spanning multiple lines are now allowed withnever
option (#156 @mathieumg)
Fixed
- Fix multiple var and destructuring handling in
prop-types
(#159) - Fix crash when retrieving propType name (#163)
2.7.1 - 2015-07-16
Changed
- Update peerDependencies requirements (#154)
- Update codebase for ESLint v1.0.0
- Change oneOfType to actually keep the child types (#148 @CalebMorris)
- Documentation improvements (#147 @lencioni)
2.7.0 - 2015-07-11
Added
- Add
no-danger
rule (#138 @scothis) - Add
jsx-curly-spacing
rule (#142)
Fixed
2.6.4 - 2015-07-02
Fixed
- Fix simple destructuring handling (#137)
2.6.3 - 2015-06-30
Fixed
- Fix ignore option for
prop-types
rule (#135) - Fix nested props destructuring (#136)
2.6.2 - 2015-06-28
Fixed
- Fix props validation when using a prop as an object key (#132)
2.6.1 - 2015-06-28
Fixed
- Fix crash in
prop-types
when encountering an empty variable declaration (#130)
2.6.0 - 2015-06-28
Added
- Add support for nested propTypes (#62 #105 @Cellule)
- Add
require-extension
rule (#117 @scothis) - Add support for computed string format in
prop-types
(#127 @Cellule) - Add ES6 methods to
sort-comp
default configuration (#97 #122) - Add support for props destructuring directly on the this keyword
- Add
acceptTranspilerName
option todisplay-name
rule (#75) - Add schema to validate rules options
Changed
- Update dependencies
Fixed
- Fix test command for Windows (#114 @Cellule)
- Fix detection of missing displayName and propTypes when
ecmaFeatures.jsx
is false (#119 @rpl) - Fix propTypes destructuring with properties as string (#118 @Cellule)
- Fix
jsx-sort-prop-types
support for keys as string (#123 @Cellule) - Fix crash if a ClassProperty has only one token (#125)
- Fix invalid class property handling in
jsx-sort-prop-types
(#129)
2.5.2 - 2015-06-14
Fixed
- Fix regression in
jsx-uses-vars
withbabel-eslint
(#110)
2.5.1 - 2015-06-14
Changed
- Update dependencies
- Documentation improvements (#99 @morenoh149)
Fixed
- Fix
prop-types
crash when propTypes definition is invalid (#95) - Fix
jsx-uses-vars
for ES6 classes (#96) - Fix hasOwnProperty that is taken for a prop (#102)
2.5.0 - 2015-06-04
Added
- Add option to make
wrap-multilines
more granular (#94 @PiPeep)
Changed
2.4.0 - 2015-05-30
Added
- Add pragma option to
jsx-uses-react
(#82 @dominicbarnes) - Add context props to
sort-comp
(#89 @zertosh)
Changed
- Update dependencies
- Documentation improvement (#91 @matthewwithanm)
Fixed
- Fix itemID in
no-unknown-property
rule (#85 @cody) - Fix license field in package.json (#90 @zertosh)
- Fix usage of contructor in
sort-comp
options (#88)
2.3.0 - 2015-05-14
Added
- Add
sort-comp
rule (#39) - Add
allow-in-func
option tono-did-mount-set-state
(#56)
Changed
- Update dependencies
- Improve errors locations for
prop-types
Fixed
- Fix quoted propTypes in ES6 (#77)
2.2.0 - 2015-04-22
Added
- Add
jsx-sort-prop-types
rule (#38 @AlexKVal)
Changed
- Documentation improvements (#71 @AlexKVal)
Fixed
- Fix variables marked as used when a prop has the same name (#69 @burnnat)
2.1.1 - 2015-04-17
Added
- Add support for classes static properties (#43)
- Add tests for the
babel-eslint
parser - Add ESLint as peerDependency (#63 @AlexKVal)
Changed
2.1.0 - 2015-04-06
Added
- Add
jsx-boolean-value
rule (#11) - Add support for static methods in
display-name
andprop-types
(#48)
Changed
- Update
jsx-sort-props
to reset the alphabetical verification on spread (#47 @zertosh) - Update
jsx-uses-vars
to be enabled by default (#49 @banderson)
Fixed
- Fix describing comment for hasSpreadOperator() method (#53 @AlexKVal)
2.0.2 - 2015-03-31
Fixed
- Fix ignore rest spread when destructuring props (#46)
- Fix component detection in
prop-types
anddisplay-name
(#45) - Fix spread handling in
jsx-sort-props
(#42 @zertosh)
2.0.1 - 2015-03-30
Fixed
- Fix props detection when used in an object (#41)
2.0.0 - 2015-03-29
Added
- Add
jsx-sort-props
rule (#16) - Add
no-unknown-property
rule (#28) - Add ignore option to
prop-types
rule
Changed
- Update dependencies
Breaking
- In
prop-types
the children prop is no longer ignored
Fixed
- Fix components are now detected when using ES6 classes (#24)
- Fix
prop-types
now return the right line/column (#33) - Fix props are now detected when destructuring (#27)
- Fix only check for computed property names in
prop-types
(#36 @burnnat)
1.6.1 - 2015-03-25
Changed
- Update
jsx-quotes
documentation
Fixed
- Fix
jsx-no-undef
withbabel-eslint
(#30) - Fix
jsx-quotes
on Literal childs (#29)
1.6.0 - 2015-03-22
Added
- Add
jsx-no-undef
rule - Add
jsx-quotes
rule (#12) - Add
@jsx
pragma support (#23)
Changed
- Allow
this.getState
references (not calls) in lifecycle methods (#22 @benmosher) - Update dependencies
Fixed
- Fix
react-in-jsx-scope
in Node.js env - Fix usage of propTypes with an external object (#9)
1.5.0 - 2015-03-14
Added
- Add
jsx-uses-vars
rule
Fixed
- Fix
jsx-uses-react
for ESLint 0.17.0
1.4.1 - 2015-03-03
Fixed
- Fix
this.props.children
marked as missing in props validation (#7) - Fix usage of
this.props
without property (#8)
1.4.0 - 2015-02-24
Added
- Add
react-in-jsx-scope
rule (#5 @glenjamin) - Add
jsx-uses-react
rule (#6 @glenjamin)
Changed
- Update
prop-types
to check props usage insead of propTypes presence (#4)
1.3.0 - 2015-02-24
Added
- Add
no-did-mount-set-state
rule - Add
no-did-update-set-state
rule
Changed
- Update dependencies
1.2.2 - 2015-02-09
Changed
- Update dependencies
Fixed
- Fix childs detection in
self-closing-comp
(#3)
1.2.1 - 2015-01-29
Changed
- Update Readme
- Update dependencies
- Update
wrap-multilines
andself-closing-comp
rules for ESLint 0.13.0
1.2.0 - 2014-12-29
Added
- Add
self-closing-comp
rule
Fixed
- Fix
display-name
andprop-types
rules
1.1.0 - 2014-12-28
Added
- Add
display-name
rule - Add
wrap-multilines
rule - Add rules documentation
- Add rules tests
1.0.0 - 2014-12-16
Added
- First revision