Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Sep 5, 2025

This PR contains the following updates:

Package Change Age Confidence
@eslint-react/eslint-plugin (source) 1.53.1 -> 2.2.4 age confidence
eslint-plugin-react-hooks (source) 5.2.0 -> 7.0.1 age confidence
eslint-plugin-unicorn 60.0.0 -> 62.0.0 age confidence

Release Notes

Rel1cx/eslint-react (@​eslint-react/eslint-plugin)

v2.2.4

Compare Source

🐞 Fixes
🪄 Improvements

v2.2.3

Compare Source

🐞 Fixes
🪄 Improvements

v2.2.2

Compare Source

🐞 Fixes
  • Remove remaining code in the unified plugin used for legacy config compatibility by @​Rel1cx in #​1277

Full Changelog: Rel1cx/eslint-react@v2.2.1...v2.2.2

v2.2.1

🪄 Improvements
  • Unified plugin no longer includes the eslint-plugin-react-debug plugin to reduce its deps by @​Rel1cx in #​1276
  • Merge @eslint-react/kit package into @eslint-react/shared package to consolidate shared utilities and reduce package fragmentation by @​Rel1cx in #​1275

Full Changelog: Rel1cx/eslint-react@v2.1.1...v2.2.1

v2.1.1

✨ New
  • Add strict, strict-typescript, and strict-type-checked presets by @​Rel1cx
  • Add no-deprecated preset to enable all rules that report deprecated React APIs by @​Rel1cx
🐞 Fixes
🪄 Improvements
  • Move some rules from recommended presets to strict presets by @​Rel1cx, closes #​1262
    • react-x/no-unstable-context-value
    • react-x/no-unstable-default-props
    • react-x/no-unused-class-component-members
    • react-x/no-unused-state
    • react-dom/no-missing-button-type
    • react-dom/no-missing-iframe-sandbox
    • react-dom/no-unsafe-iframe-sandbox
    • react-dom/no-unsafe-target-blank
  • Change typescript peer dependency version range from ^5.9.2 to ^5 by @​Rel1cx

v2.0.6

Compare Source

🐞 Fixes

Full Changelog: Rel1cx/eslint-react@v2.0.5...v2.0.6

v2.0.5

Compare Source

🪄 Improvements
  • Move error marker from dangerouslySetInnerHTML to children in dom/no-dangerously-set-innerhtml-with-children rule by @​Rel1cx in #​1256
  • Update default React version in settings from 19.1.0 to 19.2.0 by @​Rel1cx in #​1259

Full Changelog: Rel1cx/eslint-react@v2.0.4...v2.0.5

v2.0.4

Compare Source

✨ New
  • Enables naming-convention/use-state rule in recommended presets by @​Rel1cx in #​1252
🐞 Fixes

Full Changelog: Rel1cx/eslint-react@v2.0.3...v2.0.4

v2.0.3

Compare Source

🐞 Fixes
  • Fix dom/prefer-namespace-import missing in react-dom plugin by @​Rel1cx in #​1249
  • Fix false positive for dom/no-missing-button-type when specifying non-trivial expression as value of type attribute, closes #​1247 by @​Rel1cx in #​1250

Full Changelog: Rel1cx/eslint-react@v2.0.2...v2.0.3

v2.0.2

Compare Source

🪄 Improvements

v2.0.1

Compare Source

🐞 Fixes

Full Changelog: Rel1cx/eslint-react@v2.0.0...v2.0.1

v2.0.0

Compare Source

💥 Breaking Changes

Target Environment Updates: Now ESM and ESLint Flat Config Only

  • Drop support for CommonJS (CJS) module format, packages are now distributed only as ECMAScript Modules (ESM)
  • Drop support for ESLint legacy config system, packages now support only ESLint Flat Config (eslint.config.js)
  • Drop support for Node.js 18, minimum required version is now Node.js 20
  • Drop support for ESLint 8, minimum required version is now ESLint 9.3.6
  • Drop support for TypeScript 4, minimum required version is now TypeScript 5.9.2

Removed Rules

Rule Replaced by Reason
react-x/avoid-shorthand-boolean react-x/jsx-shorthand-boolean consolidated
react-x/avoid-shorthand-fragment react-x/jsx-shorthand-fragment consolidated
react-x/ensure-forward-ref-using-ref react-x/no-useless-forward-ref renamed
react-x/no-duplicate-props react-x/jsx-no-duplicate-props renamed
react-x/no-comment-textnodes react-x/jsx-no-comment-textnodes renamed
react-x/no-complicated-conditional-rendering discontinued
react-x/no-nested-components react-x/no-nested-component-definitions renamed
react-x/prefer-react-namespace-import react-x/prefer-namespace-import renamed
react-x/prefer-shorthand-boolean react-x/jsx-shorthand-boolean consolidated
react-x/prefer-shorthand-fragment react-x/jsx-shorthand-fragment consolidated
react-x/use-jsx-vars react-x/jsx-uses-vars renamed
react-dom/no-children-in-void-dom-elements react-dom/no-void-elements-with-children renamed
react-hooks-extra/no-direct-set-state-in-use-layout-effect react-hooks-extra/no-direct-set-state-in-use-effect consolidated
react-hooks-extra/no-unnecessary-use-callback react-x/no-unnecessary-use-callback relocated
react-hooks-extra/no-unnecessary-use-memo react-x/no-unnecessary-use-memo relocated
react-hooks-extra/no-unnecessary-use-prefix react-x/no-unnecessary-use-prefix relocated
react-hooks-extra/prefer-use-state-lazy-initialization react-x/prefer-use-state-lazy-initialization relocated

Removed Presets

Preset Replaced by Reason
core x renamed
off-dom disable-dom renamed

Removed Settings

Setting Replaced by Reason
additionalComponents discontinued
additionalHooks discontinued
skipImportCheck discontinued

Rules previously using these settings have been refactored to use improved heuristics and no longer require manual configuration.

✨ New

Added the following new rules:

  • react-x/jsx-shorthand-boolean: Enforces a consistent style for boolean attributes by @​Rel1cx
  • react-x/jsx-shorthand-fragment: Enforces a consistent style for React Fragments by @​Rel1cx
  • react-x/no-forbidden-props: Disallows specific props on components by @​reteps
  • react-x/no-unnecessary-key: Reports unnecessary key props on elements by @​Rel1cx, @​kachkaev
  • react-x/no-unused-props: Reports unused props in components by @​ulrichstark
  • react-dom/no-string-style-prop: Disallows string values for the style prop by @​Rel1cx, @​karlhorky
  • react-dom/prefer-namespace-import: Enforces using a namespace import for react-dom by @​Rel1cx

Added the following new rule to the recommended-type-checked preset:

  • react-x/no-unused-props: Reports unused props in components

The following rules now support Codemod features:

The following rules now support auto-fix:

  • react-x/no-missing-context-display-name by @​k-yle

The following rules now support suggestion fixes:

New configuration preset added:

  • disable-conflict-eslint-plugin-react: Disable rules in eslint-plugin-react that conflict with rules in our plugins by @​reteps
🐞 Fixes
  • fix(react-x/no-unnecessary-use-prefix): fix false positive of React Hooks defined within the callback function of vi.mock(...) in Vitest test files by @​Rel1cx
  • fix(react-web-api/no-leaked-event-listener): fix useEffect setup function check to handle React.useEffect() calls correctly by @​Rel1cx
  • fix(react-naming-convention/filename): fix false positive on well-known filenames like 404.tsx, _app.tsx, [slug].tsx by @​Rel1cx
🪄 Improvements
  • refactor: simplify React APIs detection logic by @​Rel1cx
  • refactor: cleanup utilities and simplify rule implementations by @​Rel1cx
  • docs: add comparison table between eslint-plugin-react and eslint-react rules by @​reteps, @​outslept
  • docs: replace tseslint.config with defineConfig in all examples by @​Rel1cx
  • build: migrate build system from tsup to tsdown for better performance by @​Rel1cx

Full Changelog: Rel1cx/eslint-react@v1.53.1...v2.0.0

facebook/react (eslint-plugin-react-hooks)

v7.0.1

Compare Source

v7.0.0

Compare Source

This release slims down presets to just 2 configurations (recommended and recommended-latest), and all compiler rules are enabled by default.

  • Breaking: Removed recommended-latest-legacy and flat/recommended configs. The plugin now provides recommended (legacy and flat configs with all recommended rules), and recommended-latest (legacy and flat configs with all recommended rules plus new bleeding edge experimental compiler rules). (@​poteto in #​34757)

v6.1.1

Compare Source

Note: 6.1.0 accidentally allowed use of recommended without flat config, causing errors when used with ESLint v9's defineConfig() helper. This has been fixed in 6.1.1.

v6.1.0

Compare Source

Note: Version 6.0.0 was mistakenly released and immediately deprecated and untagged on npm. This is the first official 6.x major release and includes breaking changes.

  • Breaking: Require Node.js 18 or newer. (@​michaelfaith in #​32458)
  • Breaking: Flat config is now the default recommended preset. Legacy config moved to recommended-legacy. (@​michaelfaith in #​32457)
  • New Violations: Disallow calling use within try/catch blocks. (@​poteto in #​34040)
  • New Violations: Disallow calling useEffectEvent functions in arbitrary closures. (@​jbrown215 in #​33544)
  • Handle React.useEffect in addition to useEffect in rules-of-hooks. (@​Ayc0 in #​34076)
  • Added react-hooks settings config option that to accept additionalEffectHooks that are used across exhaustive-deps and rules-of-hooks rules. (@​jbrown215) in #​34497

v6.0.0

Compare Source

Accidentally released. See 6.1.0 for the actual changes.

sindresorhus/eslint-plugin-unicorn (eslint-plugin-unicorn)

v62.0.0

Compare Source

New rules
Improvements
Fixes
  • consistent-function-scoping: Fix inconsistent behavior (#​2748) a546444

v61.0.2

Compare Source

  • throw-new-error: Fix false positive for Effect library (#​2740) 0ddf5ea
  • no-useless-undefined: Ignore Set#delete(undefined) (#​2739) 99acd27
  • prefer-includes and prefer-array-index-of: Prevent crash on Vue files (#​2645) a1da518

v61.0.1

Compare Source

  • prefer-classlist-toggle: Omit Element#classList.contains() call when fixing (#​2732) 066f96b

v61.0.0

Compare Source

New rules
Improvements
Fixes


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the renovate label Sep 5, 2025
@renovate renovate bot added the renovate label Sep 5, 2025
@renovate renovate bot requested a review from frantic1048 September 5, 2025 17:53
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 96327f2 to dee06e0 Compare September 5, 2025 17:54
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from dee06e0 to 12bd3c1 Compare September 6, 2025 08:42
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 12bd3c1 to a95858c Compare September 6, 2025 08:42
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from a95858c to 3ce13ca Compare September 8, 2025 10:15
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 3ce13ca to 2675d1c Compare September 8, 2025 10:16
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 2675d1c to 14ec4e1 Compare September 13, 2025 23:31
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 14ec4e1 to 8d21b5f Compare September 13, 2025 23:32
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 8d21b5f to 2a5d74c Compare September 15, 2025 21:04
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 2a5d74c to 3514bf7 Compare September 15, 2025 21:05
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 3514bf7 to dde11e2 Compare September 25, 2025 14:43
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from dde11e2 to b82e1c2 Compare September 25, 2025 14:44
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from b82e1c2 to 9d0223e Compare September 30, 2025 05:50
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 9d0223e to 4e99160 Compare September 30, 2025 05:50
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 4e99160 to 35ee602 Compare October 3, 2025 00:44
@renovate renovate bot changed the title fix(deps): update dependency eslint-plugin-unicorn to v61 fix(deps): update eslint rule and plugin updates (major) Oct 3, 2025
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 35ee602 to c65612e Compare October 3, 2025 00:45
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from c65612e to a57589a Compare October 4, 2025 04:39
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from a57589a to ceea643 Compare October 4, 2025 04:40
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from ceea643 to 657d8ca Compare October 6, 2025 10:39
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 657d8ca to 332ff29 Compare October 6, 2025 10:40
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 332ff29 to 274ea77 Compare October 7, 2025 04:35
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 274ea77 to aa7fd43 Compare October 7, 2025 04:36
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from aa7fd43 to 3289ea8 Compare October 8, 2025 04:41
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 3289ea8 to 9be1c89 Compare October 8, 2025 04:42
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 9be1c89 to 6f60d37 Compare October 8, 2025 21:53
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 6f60d37 to 3c99294 Compare October 8, 2025 21:54
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from cec3aca to 46c6046 Compare October 9, 2025 01:16
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 46c6046 to 471b2cc Compare October 10, 2025 00:58
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 471b2cc to a4112e9 Compare October 10, 2025 00:59
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from a4112e9 to 54752df Compare October 11, 2025 01:11
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 54752df to b5dabae Compare October 11, 2025 01:12
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from b5dabae to c09893d Compare October 11, 2025 01:42
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from c09893d to c7762c2 Compare October 11, 2025 01:42
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from c7762c2 to 3cc65f3 Compare October 16, 2025 02:07
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 3cc65f3 to 4aaf500 Compare October 16, 2025 02:08
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 4aaf500 to ab4f0b2 Compare October 20, 2025 01:42
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from ab4f0b2 to 2e2ff7f Compare October 20, 2025 01:43
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 2e2ff7f to 738ebdf Compare October 20, 2025 15:35
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 738ebdf to 1132dbe Compare October 20, 2025 15:36
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 1132dbe to f4811f6 Compare October 21, 2025 09:29
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from f4811f6 to 34a543d Compare October 21, 2025 09:30
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 34a543d to 2ba2ec2 Compare October 21, 2025 22:29
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 2ba2ec2 to d12284e Compare October 21, 2025 22:30
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from d12284e to 08e9b16 Compare October 27, 2025 06:46
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 08e9b16 to e4ebb10 Compare October 27, 2025 06:47
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from e4ebb10 to a17b741 Compare October 28, 2025 22:57
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from a17b741 to 6943cf9 Compare October 28, 2025 22:58
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 6943cf9 to 06a74d9 Compare October 31, 2025 09:27
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 06a74d9 to a6b91b7 Compare October 31, 2025 09:28
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from a6b91b7 to e12496c Compare October 31, 2025 17:39
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from e12496c to 5bb12e7 Compare October 31, 2025 17:40
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 5bb12e7 to 2fe1ef3 Compare November 2, 2025 10:37
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from 2fe1ef3 to ad751c3 Compare November 2, 2025 10:38
@renovate renovate bot force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from ad751c3 to d72760b Compare November 3, 2025 06:36
@rainx rainx force-pushed the renovate/major-eslint-rule-and-plugin-updates branch from d72760b to d9f9989 Compare November 3, 2025 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

2 participants