Releases: jsx-eslint/eslint-plugin-react
Releases · jsx-eslint/eslint-plugin-react
v7.13.0
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)
v7.12.4
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
v7.12.3
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)
v7.12.2
v7.12.1
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)
v7.12.0
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)
[`default-props-match-prop-type...
v7.11.1
Fixed
- stop crashing when assigning to propTypes (#1932, @alexzherdev)
Changed
- Fix changelog links (#1926, @ferhatelmas)
- Fix changelog links (#1929, @alexzherdev)
v7.11.0
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, @alexzherdev)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)
v7.10.0
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))