eslint-react

A series of composable ESLint plugins for libraries and frameworks that use React as a UI runtime.

MIT License

Downloads
2.4M
Stars
242
Committers
14

Bot releases are hidden (Show)

eslint-react - v1.14.3

Published by Rel1cx 18 days ago

What's Changed

🪄 Improvements

  • Update @typescript-eslint's packages to ^8.7.0.

New Contributors

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.14.2...v1.14.3

eslint-react - v1.14.2

Published by Rel1cx 27 days ago

What's Changed

🪄 Improvements

New Contributors

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.14.1...v1.14.2

eslint-react - v1.14.1

Published by Rel1cx about 1 month ago

v1.14.1 (Thu 12 Sep 2024)

What's Changed

🐞 Fixes

  • Fixed false positives in rule web-api/no-leaked-resize-observer.

New Contributors

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.14.0...v1.14.1

eslint-react - v1.14.0 Latest Release

Published by Rel1cx about 1 month ago

What's Changed

🐞 Fixes

  • Fixed mono plugins missing default export.
  • Fixed component name detection when the component name starts with a underscore.

🪄 Improvements

  • Update @typescript-eslint's packages to ^8.5.0.

New Contributors

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.13.1...v1.14.0

eslint-react - v1.13.1

Published by Rel1cx about 1 month ago

What's Changed

🐞 Fixes

  • Fixed hooks-extra/no-unnecessary-use-callback and hooks-extra/no-unnecessary-use-memo false positives when there are references from nested scopes.

New Contributors

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.13.0...v1.13.1

eslint-react - v1.13.0

Published by Rel1cx about 1 month ago

What's Changed

✨ New

  • Added web-api/no-leaked-resize-observer rule to prevent leaked ResizeObserver.

🐞 Fixes

  • hooks-extra/no-redundant-custom-hook should allow custom hooks with empty body.

🪄 Improvements

  • Rename debug/react-hooks to debug/hook.
  • Rename hooks-extra/ensure-custom-using-hooks to hooks-extra/no-redundant-custom-hook.
  • Rename hooks-extra/ensure-use-memo-has-non-empty-deps to hooks-extra/no-unnecessary-use-memo.
  • Rename hooks-extra/ensure-use-callback-has-non-empty-deps to hooks-extra/no-unnecessary-use-callback.
  • Upgrade @typescript-eslint's packages to ^8.4.0.

(The rules that were renamed in this release will still be available until the next major update to avoid breaking changes.)

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.12.4...v1.13.0

eslint-react - v1.12.4

Published by Rel1cx about 2 months ago

What's Changed

✨ New

  • Added useLayoutEffect and useInsertionEffect support to hooks-extra/no-direct-set-state-in-use-effect.

🪄 Improvements

  • Deprecate rule hooks-extra/no-direct-set-state-in-use-layout-effect in favor of hooks-extra/no-direct-set-state-in-use-effect (the previous rule will still be available until the next major update to avoid breaking changes).

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.12.3...v1.12.4

eslint-react - v1.12.3

Published by Rel1cx about 2 months ago

What's Changed

✨ New

  • Added support for detecting event listeners removed by abort signal in rule web-api/no-leaked-event-listener.

🐞 Fixes

  • Fixed no-duplicate-key rule false positives when the key is an variable.
  • Fixed web-api/no-leaked-set-timeout and web-api/no-leaked-set-interval false positives when a timer is assigned to a variable declared by let but not initialized.

🪄 Improvements

  • Allow upper case letters in the rule naming-convention/component-name when the component name is less than 4 characters, e.g. UI, CSS, SVG.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.12.2...v1.12.3

eslint-react - v1.12.2

Published by Rel1cx about 2 months ago

What's Changed

✨ New

  • Added type declarations for react-x settings to the @typescript-eslint/utils/ts-eslint module via the SharedConfigurationSettings interface.

🪄 Improvements

  • Improve the performance of the no-missing-key and no-duplicate-key rules.
  • Upgrade @typescript-eslint's packages to ^8.3.0.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.12.1...v1.12.2

eslint-react - v1.12.1

Published by Rel1cx about 2 months ago

What's Changed

✨ New

  • Add the options allowAllCaps, allowNamespace, allowLeadingUnderscore to naming-convention/component-name and set their default values to false.

🪄 Improvements

  • Normalize the component name in rule naming-convention/component-name before checking it against the pattern.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.12.0...v1.12.1

eslint-react - v1.12.0

Published by Rel1cx about 2 months ago

What's Changed

✨ New

  • Added hooks-extra rules to recommended and recommended-legacy presets.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.11.0...v1.12.0

eslint-react - v1.11.0

Published by Rel1cx about 2 months ago

What's Changed

✨ New

  • Added eslint-plugin-react-web-api - A plugin that provides rules for interacting with Web APIs in React applications.
  • Added web-api/no-leaked-timeout rule to prevent leaked setTimeout.
  • Added web-api/no-leaked-interval rule to prevent leaked setInterval.
  • Added web-api/no-leaked-event-listener rule to prevent leaked addEventListener.
  • Added web-api and web-api-legacy presets to enable all rules provided by eslint-plugin-react-web-api.

🪄 Improvements

  • Added react-web-api/no-leaked-event-listener to recommended and recommended-legacy presets.
  • Improve performance by skipping unnecessary checks when possible.
  • Improve dts generation of the @eslint-react/eslint-plugin package.
  • Improve website and documentation.
  • Upgrade @typescript-eslint's packages to ^8.2.0.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.10.1...v1.11.0

eslint-react - v1.10.1

Published by Rel1cx 2 months ago

What's Changed

🐞 Fixes

  • Fixed hooks-extra/prefer-use-state-lazy-initialization false positive when using an initializer function.

🪄 Improvements

  • Improve rule no-implicit-key error marker position and range.
  • Upgrade @typescript-eslint's packages to ^8.1.0.
  • Improve website and documentation.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.10.0...v1.10.1

eslint-react - v1.10.0

Published by Rel1cx 2 months ago

What's Changed

✨ New

  • Add disable-type-checked and disable-type-checked-legacy presets to disable all type-checked rules.

🪄 Improvements

  • Rename off-dom and off-dom-legacy presets to disable-dom and disable-dom-legacy (the old names will still be available until the next major update to avoid breaking changes).

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.9.1...v1.10.0

eslint-react - v1.9.1

Published by Rel1cx 2 months ago

What's Changed

🐞 Fixes

  • Fixed dom/no-missing-iframe-sandbox false positive when the sandbox attribute is set to sandbox="".
  • Fixed all and all-legacy presets not including hooks-extra rules.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.9.0...v1.9.1

eslint-react - v1.9.0

Published by Rel1cx 2 months ago

What's Changed

✨ New

  • Add core preset that includes the most essential rules.

🪄 Improvements

  • Upgrade @typescript-eslint's packages to 8.0.1.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.8.1...v1.9.0

eslint-react - v1.8.2

Published by Rel1cx 3 months ago

What's Changed

🐞 Fixes

  • Fixed legacy presets not being exported correctly in @eslint-react/eslint-plugin.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.8.1...v1.8.2

eslint-react - v1.8.1

Published by Rel1cx 3 months ago

What's Changed

🪄 Improvements

  • Enhance rule hooks-extra/no-direct-set-state-in-use-effect and hooks-extra/no-direct-set-state-in-use-layout-effect to support set function directly passed to useCallback and useMemo without explicitly calling it.
  • Improve website and documentation.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.8.0...v1.8.1

eslint-react - v1.8.0

Published by Rel1cx 3 months ago

What's Changed

🐞 Fixes

  • Fixed ESLintReactSettings type not being exported correctly.
  • Fixed the set function calls that are wrapped in a useMemo or useCallback like hook not being detected by hooks-extra/no-direct-set-state-in-use-effect and hooks-extra/no-direct-set-state-in-use-layout-effect.

🪄 Improvements

  • Upgrade @typescript-eslint's packages to 8.0.0.
  • Improve website and documentation.

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.7.1...v1.8.0

eslint-react - v1.7.1

Published by Rel1cx 3 months ago

What's Changed

🐞 Fixes

  • Fixed the spread attributes support for dom related rules.
  • Fixed the issue where the overridden value was retrieved when there were duplicate attributes on a JSX element.

🪄 Improvements

  • Rule no-leaked-conditional-rendering now allows a falsy boolean literal to be used on the left side of the logical expression. by @AhmedBaset in https://github.com/Rel1cx/eslint-react/pull/672
  • Tweaked the default settings shipped with various presets.
  • Overall performance improvements.

New Contributors

Full Changelog: https://github.com/Rel1cx/eslint-react/compare/v1.7.0...v1.7.1