unstale

npm / eslint-plugin-react-hooks

eslint-plugin-react-hooks

What changed in eslint-plugin-react-hooks 5, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-23.

3 breaking1 new APIs and options1 behavior and defaults2 tooling7 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.3 on npm

eslint-plugin-react-hooks 514 changes

Breaking changes 3

  • Component names must start with an uppercase letter; names such as _Button and _component are no longer accepted as components.

    5.0.0release notes

  • The plugin disallows calling hooks in async functions.

    5.0.0release notes

  • The experimental useEvent name is renamed to useEffectEvent for linting.

    5.0.0release notes

New APIs and options 1

  • The RulesOfHooks lint rule is updated with useEvent rules.

    5.0.0release notes

Behavior and default changes 1

Tooling 2

  • The plugin adds support for ESLint v9.

    5.0.0release notes

  • The plugin lints for the presence of useEvent functions in dependency lists.

    5.0.0release notes

Fixes and other changes 7

  • The plugin accepts as expressions in callbacks.

    5.0.0release notes

  • The plugin accepts as expressions in dependency arrays.

    5.0.0release notes

  • The plugin supports Flow as expressions.

    5.0.0release notes

  • The plugin treats React.use() the same as use().

    5.0.0release notes

  • The plugin considers dispatch from useActionState stable.

    5.0.0release notes

  • The plugin allows useEffect(fn, undefined).

    5.0.0release notes

  • The plugin checks useEvent references instead.

    5.0.0release notes