Skip to content

Releases: jsx-eslint/eslint-plugin-react

v7.31.1

26 Aug 19:41
v7.31.1
2d97346
Compare
Choose a tag to compare

Fixed

  • [jsx-key]: fix detecting missing key in Array.from's mapping function ([#3369][] @sjarva)
  • [jsx-no-leaked-render]: coerce strategy now allows a ternary ([#3370][], @sjarva)
Read more

v7.31.0

24 Aug 22:30
v7.31.0
b0d0ca1
Compare
Choose a tag to compare

Added

  • [jsx-newline]: add allowMultiline option when prevent option is true ([#3311][] @TildaDares)
  • [forbid-dom-props]: add disallowedFor option ([#3338][] @TildaDares)

Fixed

  • [jsx-no-literals]: properly error on children with noAttributeStrings: true ([#3317][] @TildaDares)
  • [jsx-key]: catch key errors inside conditional statements ([#3320][] @TildaDares)
  • [display-name]: Accept forwardRef and Memo nesting in newer React versions ([#3321][] @TildaDares)
  • [jsx-key]: avoid a crash from optional chaining from [#3320][] ([#3327][] @ljharb)
  • [jsx-key]: avoid a crash on a non-array node.body from [#3320][] ([#3328][] @ljharb)
  • [display-name]: fix false positive for assignment of function returning null ([#3331][] @apbarrero)
  • [display-name]: fix identifying _ as a capital letter ([#3335][] @apbarrero)
  • [require-default-props]: avoid a crash when function has no props param ([#3350][] @noahnu)
  • [display-name], component detection: fix HOF returning null as Components ([#3347][] @jxm-math)
  • [forbid-prop-types]: Ignore objects that are not of type React.PropTypes ([#3326][] @TildaDares)
  • [display-name], component detection: fix false positive for HOF returning only nulls and literals ([#3305][] @golopot)
  • [jsx-no-target-blank]: False negative when rel attribute is assigned using ConditionalExpression ([#3332][] @V2dha)
  • [jsx-no-leaked-render]: autofix nested "&&" logical expressions ([#3353][] @hduprat)
  • [jsx-sort-props]: sorted attributes now respect comments ([#3358][] @ROSSROSALES)

Changed

  • [Refactor] [jsx-indent-props]: improved readability of the checkNodesIndent function ([#3315][] @caroline223)
  • [Tests] [jsx-indent], [jsx-one-expression-per-line]: add passing test cases ([#3314][] @ROSSROSALES)
  • [Refactor] boolean-prop-naming, jsx-indent: avoid assigning to arguments ([#3316][] @caroline223)
  • [Docs] [sort-comp]: add class component examples ([#3339][] @maurer2)
  • [Docs] [jsx-no-useless-fragment]: add more examples of correct code ([#3349][] @karlhorky)
  • [Docs] [jsx-boolean-value]: add jsdoc types for helper functions ([#3344][] @caroline223)
  • [readme] remove dead codeclimate badge, add actions badge (@ljharb)
  • [readme] Remove dead david-dm badge ([#3262][] @ddzz)
  • [Refactor] [jsx-closing-bracket-location], [jsx-no-bind]: fix eslint issues ([#3351][] @caroline223)
  • [Tests] [function-component-definition]: add passing test cases ([#3355][] @TildaDares)
  • [Docs] [jsx-no-target-blank]: Fix link to link-type-noreferrer ([#3319][] @Luccasoli)
  • [Docs] document which rules provide suggestions ([#3359][], [#3365][] @bmish)
  • [Docs] Consistent rule descriptions and doc sections ([#3361][] @bmish)
  • [Docs] Standardize deprecated rule notice ([#3364][] @bmish)
  • [Docs] Fix typos ([#3366][] @bmish)
  • [Docs] Add markdownlint for documentation formatting consistency ([#3367][] @bmish)
  • [Docs] Add config notice to rule docs ([#3362][] @bmish)
Read more

v7.30.1

23 Jun 21:22
v7.30.1
3348023
Compare
Choose a tag to compare

7.30.1 - 2022.06.23

Fixed

Changed

v7.30.0

18 May 22:35
v7.30.0
91d3757
Compare
Choose a tag to compare

Added

  • [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)
  • add [jsx-no-leaked-render] ([#3203][] @Belco90)
  • [require-default-props]: add option functions ([#3249][] @nix6839)

Fixed

Changed

  • [readme] remove global usage and eslint version from readme ([#3254][] @aladdin-add)
  • [Refactor] fix linter errors ([#3261][] @golopot)
  • [Docs] [no-unused-prop-types]: fix syntax errors ([#3259][] @mrdulin)
  • [Refactor] improve performance for detecting function components ([#3265][] @golopot)
  • [Refactor] improve performance for detecting class components ([#3267][] @golopot)
  • [Refactor] [no-deprecated]: improve performance ([#3271][] @golopot)
  • [Refactor] [no-did-mount-set-state], [no-did-update-set-state], [no-will-update-set-state]: improve performance ([#3272][] @golopot)
  • [Refactor] improve performance by avoiding unnecessary Components.detect ([#3273][] @golopot)
  • [Refactor] add isParenthesized AST util ([#3203][] @Belco90)
  • [Docs] default-props-match-prop-types, require-default-props, sort-prop-types: fix typos ([#3279][] @nix6839)
  • [Refactor] improve performance of rule merging ([#3281][] @golopot)
  • [Refactor] improve performance of component detection ([#3276][] @golopot)
Read more

v7.29.4

13 Mar 23:33
v7.29.4
73ad445
Compare
Choose a tag to compare

Fixed

  • [no-unused-state]: avoid a crash on a class field gDSFP ([#3236][] @ljharb)
  • [boolean-prop-naming]: handle React.FC, intersection, union types ([#3241][] @ljharb)
Read more

v7.29.3

03 Mar 23:06
v7.29.3
7484aca
Compare
Choose a tag to compare

Fixed

  • [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)
Read more

v7.29.2

26 Feb 07:36
v7.29.2
e972bd7
Compare
Choose a tag to compare

v7.29.1

25 Feb 19:02
v7.29.1
7f44ecc
Compare
Choose a tag to compare

Fixed

v7.29.0

25 Feb 18:07
v7.29.0
ddcc5b3
Compare
Choose a tag to compare

Added

  • add [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)
  • add [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)

Fixed

  • [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)

Changed

  • [readme] change [jsx-runtime] link from branch to sha ([#3160][] @tatsushitoji)
  • [Docs] HTTP => HTTPS ([#3133][] @Schweinepriester)
  • [readme] Some grammar fixes ([#3186][] @JJ)
  • [Docs] [jsx-no-target-blank]: Improve readme ([#3169][] @apepper)
  • [Docs] [display-name]: improve examples ([#3189][] @golopot)
  • [Refactor] [no-invalid-html-attribute]: sort HTML_ELEMENTS and messages ([#3182][] @Primajin)
  • [Docs] [forbid-foreign-prop-types]: document allowInPropTypes option ([#1815][] @ljharb)
  • [Refactor] [jsx-sort-default-props]: remove unnecessary code ([#1817][] @ljharb)
  • [Docs] [jsx-no-target-blank]: fix syntax highlighting ([#3199][] @shamrin)
  • [Docs] [jsx-key]: improve example ([#3202][] @chnakamura)
  • [Refactor] [jsx-key]: use more AST selectors (@ljharb)

New Contributors

Full Changelog: v7.28.0...v7.29.0

v7.28.0

05 Jan 06:33
v7.28.0
9be55ed
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v7.27.1...v7.28.0