eslint-plugin-react
Advanced tools
Changelog
[7.30.1] - 2022.06.23
display-name
]: fix false positive for HOF returning only nulls ([#3291][] @golopot)jsx-no-leaked-render
]: avoid unnecessary negation operators and ternary branches deletion ([#3299][] @Belco90)display-name
]: fix false positive when using memo ([#3304][] @golopot)jsx-tag-spacing
]: rename option from [#3264][] ([#3294[] @ljharb)jsx-key
]: split the examples ([#3293][] @ioggstream)Changelog
[7.30.0] - 2022.05.18
destructuring-assignment
]: add option destructureInSignature
([#3235][] @golopot)no-unknown-property
]: Allow crossOrigin on image tag (SVG) ([#3251][] @zpao)jsx-tag-spacing
]: Add multiline-always
option ([#3260][], [#3264][] @Nokel81)function-component-definition
]: replace var
by const
in certain situations ([#3248][] @JohnBerd @SimeonC)jsx-no-leaked-render
] ([#3203][] @Belco90)require-default-props
]: add option functions
([#3249][] @nix6839)jsx-newline
]: Add allowMultilines
option ([#3311][] @TildaDares)hook-use-state
]: Allow UPPERCASE setState setter prefixes ([#3244][] @duncanbeevers)propTypes
: add VFC
to react generic type param map ([#3230][] @dlech)no-unused-state
]: avoid a crash ([#3258][] @WillyLiaoWH @ljharb)jsx-no-useless-fragment
]: use proper apostrophe in error message ([#3266][] @develohpanda)propTypes
: handle imported types/interface in forwardRef generic ([#3280][] @vedadeepta)button-has-type
]: fix exception for <button type>
([#3255][] @meowtec)no-unstable-nested-components
]: Improve error message and catch React.memo() ([#3247][] @zacharyliu)no-unused-prop-types
]: fix syntax errors ([#3259][] @mrdulin)no-deprecated
]: improve performance ([#3271][] @golopot)no-did-mount-set-state
], [no-did-update-set-state
], [no-will-update-set-state
]: improve performance ([#3272][] @golopot)Components.detect
([#3273][] @golopot)isParenthesized
AST util ([#3203][] @Belco90)default-props-match-prop-types
, require-default-props
, sort-prop-types
: fix typos ([#3279][] @nix6839)Changelog
[7.29.4] - 2022.03.13
no-unused-state
]: avoid a crash on a class field gDSFP ([#3236][] @ljharb)boolean-prop-naming
]: handle React.FC, intersection, union types ([#3241][] @ljharb)Changelog
[7.29.3] - 2022.03.03
no-unused-state
]: avoid a crash on type-only gDSFP declarations ([#3225][] @ljharb)jsx-curly-brace-presence
]: the string "never" defaults to propElementValues
as ignore
([#3228][] @ljharb)propTypes
: add VFC
to react generic list ([#3230][] @ljharb)Changelog
[7.29.2] - 2022.02.25
jsx-curly-brace-presence
]: avoid warning on curlies containing quote characters ([#3214][] @ljharb)jsx-indent
]: do not report on non-jsx-returning ternaries that contain null ([#3222][] @ljharb)jsx-indent
]: properly report on returned ternaries with jsx ([#3222][] @ljharb)no-array-index-key
]: detect named-imported cloneElement
/createElement
([#3213][] @ljharb)Changelog
[7.29.1] - 2022.02.25
jsx-key
]: prevent false "missing array key" warning ([#3215][] @ljharb)jsx-indent
]: avoid checking returns sans jsx ([#3218][] @ljharb)jsx-key
]: avoid a crash ([#3220][] @ljharb)Changelog
[7.29.0] - 2022.02.24
hook-use-state
] rule to enforce symmetric useState hook variable names ([#2921][] @duncanbeevers)jsx-no-target-blank
]: Improve fixer with option allowReferrer
([#3167][] @apepper)jsx-curly-brace-presence
]: add "propElementValues" config option ([#3191][] @ljharb)iframe-missing-sandbox
] rule ([#2753][] @tosmolka @ljharb)no-did-mount-set-state
], [no-did-update-set-state
]: no-op with react >= 16.3 ([#1754][] @ljharb)jsx-sort-props
]: support multiline prop groups ([#3198][] @duhamelgm)jsx-key
]: add warnDuplicates
option to warn on duplicate jsx keys in an array ([#2614][] @ljharb)jsx-sort-props
]: add locale
option ([#3002][] @ljharb)prop-types
], propTypes
: add support for exported type inference ([#3163][] @vedadeepta)no-invalid-html-attribute
]: allow 'shortcut icon' on link
([#3174][] @Primajin)prefer-exact-props
] improve performance for Identifier
visitor ([#3190][] @meowtec)propTypes
: Handle TSTypeReference in no-unused-prop-type ([#3195][] @niik)sort-prop-types
]: avoid repeated warnings of the same node/reason ([#519][] @ljharb)jsx-indent
]: Fix indent handling for closing parentheses ([#620][] @stefanbuck])prop-types
]/propTypes
: follow a returned identifier to see if it is JSX ([#1046][] @ljharb)no-unused-state
]: TS: support getDerivedStateFromProps
as an arrow function ([#2061][] @ljharb)no-array-index-key
]: catch .toString
and String()
usage ([#2813][] @RedTn)function-component-definition
]: do not break on dollar signs ([#3207][] @ljharb)prefer-stateless-function
]: avoid a crash inside doctrine
([#2596][] @ljharb)prop-types
]: catch infinite loop ([#2861][] @ljharb)forbid-prop-types
]: properly report name in error message; check undestructured arguments ([#2945][] @ljharb)jsx-runtime
] link from branch to sha ([#3160][] @tatsushitoji)jsx-no-target-blank
]: Improve readme ([#3169][] @apepper)display-name
]: improve examples ([#3189][] @golopot)no-invalid-html-attribute
]: sort HTML_ELEMENTS and messages ([#3182][] @Primajin)forbid-foreign-prop-types
]: document allowInPropTypes
option ([#1815][] @ljharb)jsx-sort-default-props
]: remove unnecessary code ([#1817][] @ljharb)jsx-no-target-blank
]: fix syntax highlighting ([#3199][] @shamrin)jsx-key
]: improve example ([#3202][] @chnakamura)jsx-key
]: use more AST selectors (@ljharb)Changelog
[7.28.0] - 2021.12.22
function-component-definition
]: support namedComponents option being an array ([#3129][] @petersendidit)jsx-indent-props
]: Reset line.isUsingOperator
correctly after ternary ([#3146][] @tobiaswaltl)no-arrow-function-lifecycle
], [no-unused-class-component-methods
]: use report/messages convention (@ljharb)util.isReactHookCall
([#3156][] @duncanbeevers)Changelog
[7.27.1] - 2021.11.18
no-invalid-html-attribute
]: allow link
rel
to have apple-touch-icon
, mask-icon
([#3132][] @ljharb)no-unused-class-component-methods
]: add getChildContext
lifecycle method ([#3136][] @yoyo837)prop-types
]: fix false positives on renames in object destructuring ([#3142][] @golopot)no-arrow-function-lifecycle
]: fix invalid autofix from a concise arrow method to a regular one ([#3145][] @ljharb)display-name
]: avoid false positives on non-creatClass object expressions ([#3144] @ljharb)