You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[ ] Deprecate CommonJS distribution (will only provide migration guide for legacy environments)
19
-
-[ ] Update all documentation examples to use ESM syntax (rules itself still support linting CommonJS code)
17
+
-[x] Publish ESM-Only packages
20
18
21
19
### Plugins (with ecological niche explanation)
22
20
@@ -40,44 +38,46 @@ Minimum supported versions:
40
38
41
39
-[ ]`function-component-definition`
42
40
-[x]`no-useless-fragment`
43
-
-[x]`prefer-shorthand-fragment`
44
41
-[x]`prefer-react-namespace-import`
42
+
-[x]`prefer-shorthand-fragment`
45
43
-[x]`prefer-shorthand-boolean`
46
44
47
45
### Add suggestion-fix feature to rules that can be fixed interactively
48
46
49
47
-[ ]`no-prop-types`
50
-
-[ ]`no-leaked-conditional-rendering`
51
48
-[ ]`no-redundant-should-component-update`
52
49
-[ ]`no-unused-class-component-members`
53
50
-[ ]`no-unused-state`
54
-
-[ ]`prefer-destructuring-assignment`
55
51
-[ ]`dom/no-missing-button-type`
56
52
-[ ]`dom/no-missing-iframe-sandbox`
57
53
-[ ]`dom/no-unsafe-iframe-sandbox`
58
54
-[ ]`dom/no-unsafe-target-blank`
59
-
-[ ]`web-api/no-leaked-timeout`
60
-
-[ ]`web-api/no-leaked-interval`
61
-
-[ ]`web-api/no-leaked-event-listener`
62
-
-[ ]`web-api/no-leaked-resize-observer`
63
55
64
56
### New Rules
65
57
58
+
-[x]`jsx-no-comment-textnodes` - Disallow text nodes with comments in JSX (Replaces `no-comment-textnodes`)
59
+
-[x]`jsx-shorthand-boolean` - Enforces shorthand boolean attributes in JSX (Replaces `prefer-shorthand-boolean`)
60
+
-[x]`jsx-shorthand-fragment` - Enforces shorthand fragment syntax in JSX (Replaces `prefer-shorthand-fragment`)
66
61
-[x]`no-context-provider` - Replaces usages of `<Context.Provider>` with `<Context>` (React 19)
67
62
-[x]`no-forward-ref` - Replaces usages of `forwardRef` with passing `ref` as a prop (React 19)
68
63
-[x]`no-use-context` - Replaces usages of `useContext` with `use` (React 19)
69
-
-[x]`react-dom/no-render` - Replaces usages of `ReactDom.render()` with `createRoot(node).render()` (React 19)
70
-
-[x]`react-dom/no-hydrate` - Replaces usages of `ReactDom.hydrate()`with `hydrateRoot()` (React 19)
64
+
-[x]`prefer-namespace-import` - Enforces the use of namespace imports for React (Replaces `prefer-react-namespace-import`)
65
+
-[]`react-dom/no-test-utils-act` - Replaces the usages of `TestUtils.act()`to use `React.act()` (React 19)
71
66
-[ ]`react-dom/no-unmount-component-at-node` - Replaces usages of `ReactDom.unmountComponentAtNode()` with `root.unmount()` (React 19)
67
+
-[x]`react-dom/no-hydrate` - Replaces usages of `ReactDom.hydrate()` with `hydrateRoot()` (React 19)
68
+
-[x]`react-dom/no-render` - Replaces usages of `ReactDom.render()` with `createRoot(node).render()` (React 19)
72
69
-[x]`react-dom/no-use-form-state` - Replaces the usages of `useFormState()` to use `useActionState()` (React 19)
73
-
-[]`react-dom/no-test-utils-act` - Replaces the usages of `TestUtils.act()` to use `React.act()` (React 19)
70
+
-[x]`react-dom/prefer-namespace-import` - Enforces the use of namespace imports for ReactDOM
74
71
-[x]`naming-convention/context-name` - Enforces context name to be a valid component name with the suffix `Context` (React 19)
75
72
-[ ]`function-component-definition` - Enforce the definition of function components ([Rel1cx/eslint-react#739](https://github.com/Rel1cx/eslint-react/issues/739))
76
73
-[ ]`hooks-extra/no-circular-effect` - Detect circular `set` (and `dispatch`) functions and deps patterns in `useEffect` like Hooks ([Rel1cx/eslint-react#755](https://github.com/Rel1cx/eslint-react/issues/755))
77
74
78
-
### Advanced Configuration features
75
+
### Removed Rules
79
76
80
-
-[ ] Additional components ([`settings["react-x"].additionalComponents`](https://eslint-react.xyz/docs/configurations#additionalcomponents)) transitions from experimental to stable
77
+
-[x]`no-comment-textnodes` - Replaced by `jsx-no-comment-textnodes`
78
+
-[x]`prefer-react-namespace-import` - Replaced by `prefer-namespace-import`
79
+
-[x]`prefer-shorthand-boolean` - Replaced by `jsx-shorthand-boolean`
80
+
-[x]`prefer-shorthand-fragment` - Replaced by `jsx-shorthand-fragment`
0 commit comments