-
-
Notifications
You must be signed in to change notification settings - Fork 29
Merge 2.0.0 into main, closes #335 #1238
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…d improve validation (#1185) Signed-off-by: REL1CX <dokimondex@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request merges version 2.0.0 into main, representing a major version bump with significant breaking changes and new features. The update introduces ESM-only distribution, updates minimum system requirements, and consolidates multiple rule changes.
Key changes include:
- Migrated to ESM-only packages with updated Node.js (20.19.0), ESLint (9.36.0), and TypeScript (5.9.2) requirements
- Added new rules and consolidated existing ones with improved functionality
- Removed legacy CommonJS support and updated build tooling from
tsuptotsdown
Reviewed Changes
Copilot reviewed 224 out of 717 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| packages/plugins/eslint-plugin-react-dom/src/rules/no-string-style-prop.spec.ts | New test file for rule that disallows string values for style prop |
| packages/plugins/eslint-plugin-react-dom/src/rules/no-string-style-prop.mdx | Documentation for new no-string-style-prop rule |
| packages/plugins/eslint-plugin-react-dom/src/rules/no-script-url.ts | Refactored to use new kit utilities and updated imports |
| packages/plugins/eslint-plugin-react-dom/src/rules/no-missing-iframe-sandbox.ts | Enhanced with suggestion fixes and improved error handling |
| packages/plugins/eslint-plugin-react-dom/src/rules/no-missing-button-type.ts | Added suggestion fixes for button type attribute |
| packages/plugins/eslint-plugin-react-dom/src/plugin.ts | Updated plugin structure and removed deprecated rules |
| packages/plugins/eslint-plugin-react-dom/package.json | Updated to ESM-only with version bump and dependency updates |
| packages/core/src/jsx/jsx-config.ts | Consolidated JSX configuration utilities with improved documentation |
| packages/core/src/jsx/jsx-attribute-value.ts | Complete rewrite of attribute value resolution system |
| package.json | Version bump and updated tooling dependencies |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
packages/plugins/eslint-plugin-react-dom/src/rules/no-missing-iframe-sandbox.ts
Show resolved
Hide resolved
packages/plugins/eslint-plugin-react-dom/src/rules/no-missing-button-type.ts
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 297 out of 492 changed files in this pull request and generated 6 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
packages/plugins/eslint-plugin-react-x/src/rules/jsx-shorthand-boolean.ts
Show resolved
Hide resolved
packages/plugins/eslint-plugin-react-hooks-extra/src/rules/no-direct-set-state-in-use-effect.ts
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 297 out of 493 changed files in this pull request and generated 2 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
packages/plugins/eslint-plugin-react-x/src/rules/no-unused-props.spec.ts
Show resolved
Hide resolved
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: REL1CX <rel1cx@proton.me>
What kind of change does this PR introduce?
Does this PR introduce a breaking change?
Checklist
fix: remove a typo, closes #___, #___)Other information
v2.0.0 (TBD)
💥 Breaking Changes
Target Environment Updates: Now ESM and ESLint Flat Config Only
eslint.config.js)Removed Rules
react-x/jsx-shorthand-booleanreact-x/jsx-shorthand-fragmentreact-x/no-useless-forward-refreact-x/jsx-no-duplicate-propsreact-x/jsx-no-comment-textnodesreact-x/no-nested-component-definitionsreact-x/prefer-namespace-importreact-x/jsx-shorthand-booleanreact-x/jsx-shorthand-fragmentreact-x/jsx-uses-varsreact-dom/no-void-elements-with-childrenreact-hooks-extra/no-direct-set-state-in-use-effectreact-x/no-unnecessary-use-callbackreact-x/no-unnecessary-use-memoreact-x/no-unnecessary-use-prefixreact-x/prefer-use-state-lazy-initializationRemoved Presets
corexcore-legacyoff-domdisable-domoff-dom-legacyx-legacydom-legacyweb-api-legacyrecommended-legacyrecommended-typescript-legacyrecommended-type-checked-legacyRemoved Settings
additionalComponentsadditionalHooksskipImportCheckThe rule implementations have been refactored to improve performance and maintainability.
✨ New
Added the following new rules:
react-x/jsx-shorthand-boolean: Enforces a consistent style for boolean attributesreact-x/jsx-shorthand-fragment: Enforces a consistent style for React Fragmentsreact-x/no-forbidden-props: Disallows specific props on componentsreact-x/no-unnecessary-key: Reports unnecessarykeyprops on elementsreact-x/no-unused-props: Reports unused props in componentsreact-dom/no-string-style-prop: Disallows string values for thestylepropreact-dom/prefer-namespace-import: Enforces using a namespace import forreact-domAdded the following new rule to the
recommended-type-checkedpreset:react-x/no-unused-props: Reports unused props in componentsThe following rules now support Codemod features:
react-x/no-component-did-updatereact-x/no-component-will-receive-propsreact-x/no-component-will-updatereact-x/no-context-providerreact-x/no-forward-refreact-x/no-string-refsThe following rules now support auto-fix:
react-x/prefer-namespace-importreact-dom/prefer-namespace-importThe following rules now support suggestion fixes:
react-dom/no-missing-button-typereact-dom/no-missing-iframe-sandboxreact-dom/no-unsafe-target-blankNew configuration preset added:
disable-conflict-eslint-plugin-react: Disable rules ineslint-plugin-reactthat conflict with rules in our plugins🐞 Fixes
vi.mock(...)in Vitest test filesuseEffectsetup function check to handleReact.useEffect()calls correctly404.tsx,_app.tsx,[slug].tsx🪄 Improvements
eslint-plugin-reactandeslint-reactrulestseslint.configwithdefineConfigin all examplestsuptotsdownfor better performanceFull Changelog: v1.53.1...v2.0.0