Releases: jsx-eslint/eslint-plugin-react
Releases · jsx-eslint/eslint-plugin-react
v7.34.1
Fixed
- [
jsx-no-leaked-render
]: prevent wrongly adding parens ([#3700][] @developer-bandi) - [
boolean-prop-naming
]: detect TS interfaces ([#3701][] @developer-bandi) - [
boolean-prop-naming
]: literalType error fix ([#3704][] @developer-bandi) - [
boolean-prop-naming
]: allow TSIntersectionType ([#3705][] @developer-bandi) - [
no-unknown-property
]: supportpopover
,popovertarget
,popovertargetaction
attributes ([#3707][] @ljharb) - [
no-unknown-property
]: only matchdata-*
attributes containing-
([#3713][] @silverwind) - [
checked-requires-onchange-or-readonly
]: correct options that were behaving opposite ([#3715][] @jaesoekjjang)
Changed
- [
boolean-prop-naming
]: improve error message (@ljharb)
v7.34.0
Added
- [
sort-prop-types
]: give errors on TS types ([#3615][] @akulsr0) - [
no-invalid-html-attribute
]: add support forapple-touch-startup-image
rel
attributes inlink
tags ([#3638][] @thomashockaday) - [
no-unknown-property
]: add requireDataLowercase option ([#3645][] @HermanBilous) - [
no-unknown-property
]: adddisplaystyle
on<math>
([#3652][] @lounsbrough) - [
prefer-read-only-props
], [prop-types
], component detection: allow components to be async functions ([#3654][] @pnodet) - [
no-unknown-property
]: supportonResize
on audio/video tags ([#3662][] @caesar1030) - [
jsx-wrap-multilines
]: addnever
option to prohibit wrapping parens on multiline JSX ([#3668][] @reedws) - [
jsx-filename-extension
]: addignoreFilesWithoutCode
option to allow empty files ([#3674][] @burtek) - [
jsx-boolean-value
]: addassumeUndefinedIsFalse
option ([#3675][] @developer-bandi) linkAttribute
setting, [jsx-no-target-blank
]: support multiple properties ([#3673][] @burtek)- [
jsx-no-script-url
]: addincludeFromSettings
option to supportlinkAttributes
setting ([#3673][] @burtek) - [
jsx-one-expression-per-line
]: addnon-jsx
option to allow non-JSX children in one line ([#3677][] @burtek) - add [
checked-requires-onchange-or-readonly
] rule ([#3680][] @jaesoekjjang)
Fixed
- [
jsx-no-leaked-render
]: preserve RHS parens for multiline jsx elements while fixing ([#3623][] @akulsr0) - [
jsx-key
]: detect conditional returns ([#3630][] @yialo) - [
jsx-newline
]: prevent a crash whenallowMultilines
([#3633][] @ljharb) - [
no-unknown-property
]: use a better regex to avoid a crash ([#3666][] @ljharb @SCH227) - [
prop-types
]: handle nested forwardRef + memo ([#3679][] @developer-bandi) - [
no-unknown-property
]: addfetchPriority
([#3697][] @SevereCloud) - [
forbid-elements
]: prevent a crash oncreateElement()
([#3632][] @ljharb)
Changed
- [
jsx-boolean-value
]: make error messages clearer ([#3691][] @developer-bandi) - [Refactor]
propTypes
: extract type params to var ([#3634][] @HenryBrown0) - [Refactor] [
boolean-prop-naming
]: invert if statement ([#3634][] @HenryBrown0) - [Refactor] [
function-component-definition
]: exit early if no type params ([#3634][] @HenryBrown0) - [Refactor] [
jsx-props-no-multi-spaces
]: extract type parameters to var ([#3634][] @HenryBrown0) - [Docs] [
jsx-key
]: fix correct example ([#3656][] @developer-bandi) - [Tests]
jsx-wrap-multilines
: passing tests ([#3545][] @burtek) - [Docs] [
iframe-missing-sandbox
]: fix link to iframe attribute on mdn ([#3690][] @nnmrts) - [Docs] [
hook-use-state
]: fix an undefined variable ([#3626][] @chentsulin)
v7.33.2
Fixed
- [
no-deprecated
]: prevent false positive on commonjs import ([#3614][] @akulsr0) - [
no-unsafe
]: report on the method instead of the entire component (@ljharb) - [
no-deprecated
]: report on the destructured property instead of the entire variable declarator (@ljharb) - [
no-deprecated
]: report on the imported specifier instead of the entire import statement (@ljharb) - [
no-invalid-html-attribute
]: report more granularly (@ljharb)
v7.33.1
Fixed
- [
require-default-props
]: fix config schema ([#3605][] @controversial) - [
jsx-curly-brace-presence
]: Revert [#3538][] due to issues with intended string type casting usage ([#3611][] @taozhou-glean) - [
sort-prop-types
]: ensure sort-prop-types respects noSortAlphabetically ([#3610][] @caesar1030)
v7.33.0
Added
- [
display-name
]: addcheckContextObjects
option ([#3529][] @JulesBlm) - [
jsx-first-prop-new-line
]: addmultiprop
option ([#3533][] @haydncomley) - [
no-deprecated
]: add React 18 deprecations ([#3548][] @sergei-startsev) - [
forbid-component-props
]: adddisallowedFor
option ([#3417][] @jacketwpbb)
Fixed
- [
no-array-index-key
]: consider flatMap ([#3530][] @k-yle) - [
jsx-curly-brace-presence
]: handle single and only expression template literals ([#3538][] @taozhou-glean) - [
no-unknown-property
]: allowonLoad
onsource
(@ljharb) - [
jsx-first-prop-new-line
]: ensure autofix preserves generics in component name ([#3546][] @ljharb) - [
no-unknown-property
]: allowfill
prop on<symbol>
([#3555][] @stefanprobst) - [
display-name
], [prop-types
]: when checking for a capitalized name, ignore underscores entirely ([#3560][] @ljharb) - [
no-unused-state
]: avoid crashing on a class field function with destructured state ([#3568][] @ljharb) - [
no-unused-prop-types
]: allow using spread with object expression in jsx ([#3570][] @akulsr0) - Revert "[
destructuring-assignment
]: Handle destructuring of useContext in SFC" ([#3583][] [#2797][] @102) - [
prefer-read-only-props
]: add TS support ([#3593][] @HenryBrown0)
Changed
v7.32.2
v7.32.1
v7.32.0
Added
- support new config system (#3429 @jjangga0214)
- [
hook-use-state
]: addallowDestructuredState
option ([#3449][] @ljharb) - add [
sort-default-props
] and deprecate [jsx-sort-default-props
] ([#1861][] @alexzherdev) - add [
no-object-type-as-default-prop
] rule ([#2848][] @cyan33 @fengkx)
Fixed
- configs: avoid legacy config system error (#3461 @ljharb)
- [
sort-prop-types
]: restore autofixing ([#3452][], [#3471][] @ROSSROSALES) - [
no-unknown-property
]: do not checkfbs
elements ([#3494][] @brianogilvie) - [
jsx-newline
]: No newline between comments and jsx elements ([#3493][] @justmejulian) - [
jsx-no-leaked-render
]: Don't report errors on empty strings if React >= v18 ([#3488][] @himanshu007-creator) - [
no-invalid-html-attribute
]: convert autofix to suggestion ([#3474][] @himanshu007-creator @ljharb) - [
jsx-no-leaked-render
]: fix removing parentheses for conditionals ([#3502][] @akulsr0) - [
jsx-no-leaked-render
]: invalid fixes in coerce mode ([#3511][] @akulsr0) - [
destructuring-assignment
]: Handle destructuring of useContext in SFC ([#2797][] @Zinyon @ljharb)
Changed
- [Docs] [
jsx-no-leaked-render
]: Remove mentions of empty strings for React 18 ([#3468][] @karlhorky) - [Docs] update
eslint-doc-generator
to v1.0.0 ([#3499][] @bmish) - [meta] add issue template ([#3483][] @ROSSROSALES)
- [Docs] Use emoji for jsx-runtime config and config file for eslint-doc-generator ([#3504][] @bmish)
- [Docs] [
prefer-exact-props
]: fix example flow syntax ([#3510][] @smackfu) - [Perf] use
anyOf
instead ofoneOf
(@ljharb @remcohaszing)