Skip to content

Add React Server Components (RSC) plugin - #1457

Merged
Rel1cx merged 10 commits into
mainfrom
eslint-plugin-react-rsc
Feb 2, 2026
Merged

Add React Server Components (RSC) plugin#1457
Rel1cx merged 10 commits into
mainfrom
eslint-plugin-react-rsc

Conversation

@Rel1cx

@Rel1cx Rel1cx commented Feb 2, 2026

Copy link
Copy Markdown
Owner

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Perf
  • Docs
  • Test
  • Chore
  • Enhancement
  • New Binding issue #___
  • Code style update
  • Refactor
  • Build-related changes
  • Other, please describe:

Does this PR introduce a breaking change?

  • Yes, and the changes were approved in issue #___
  • No

Checklist

  • When resolving issues, they are referenced in the PR's title (e.g fix: remove a typo, closes #___, #___)
  • I have added a convincing reason for adding this feature, if necessary

Other information

Rel1cx and others added 8 commits February 2, 2026 15:59
…ts plugin PR (#1452)

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: REL1CX <solarflamex@hotmail.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: REL1CX <solarflamex@hotmail.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: REL1CX <solarflamex@hotmail.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
@vercel

vercel Bot commented Feb 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
eslint-react Skipped Skipped Feb 2, 2026 8:25am

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 introduces a new React Server Components (RSC) plugin by extracting RSC-related functionality into a dedicated eslint-plugin-react-rsc package. The existing rule rsc-no-misused-use-server from the react-x plugin has been migrated to the new RSC plugin as function-definition and the version has been bumped from 2.9.0-beta.0 to 2.9.0.

Changes:

  • Created new eslint-plugin-react-rsc package with the migrated function-definition rule
  • Added rsc and disable-rsc configuration presets to the main plugin
  • Updated all package versions from 2.9.0-beta.0 to 2.9.0
  • Removed the old rsc-no-misused-use-server rule from the react-x plugin
  • Updated documentation, scripts, and changelog to reflect the new structure

Reviewed changes

Copilot reviewed 44 out of 45 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
scripts/verify-rules-metas.ts Adds RSC section header for rule verification script
scripts/update-website.ts Adds RSC category to website update script
pnpm-lock.yaml Adds dependency entries for new eslint-plugin-react-rsc package
packages/utilities/*/package.json Version bump from 2.9.0-beta.0 to 2.9.0
packages/plugins/eslint-plugin/src/index.ts Integrates RSC config into main plugin exports
packages/plugins/eslint-plugin/src/configs/rsc.ts New RSC configuration preset
packages/plugins/eslint-plugin/src/configs/disable-rsc.ts New preset to disable RSC rules
packages/plugins/eslint-plugin/src/configs/disable-experimental.ts Updates experimental config to reference new rule name
packages/plugins/eslint-plugin/src/configs/all.ts Replaces old rule with new RSC rule
packages/plugins/eslint-plugin/package.json Adds dependency on eslint-plugin-react-rsc
packages/plugins/eslint-plugin-react-x/* Removes old rsc-no-misused-use-server rule
packages/plugins/eslint-plugin-react-rsc/* New RSC plugin package with function-definition rule
packages/plugins/*/package.json Version bumps for all plugin packages
VERSION Version bump to 2.9.0
CHANGELOG.md Documents the migration and new features
apps/website/content/docs/rules/* Updates documentation with new RSC section and rule references
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (3)

packages/plugins/eslint-plugin-react-rsc/src/rules/function-definition.mdx:114

  • The file paths in the Implementation section are incorrect. The actual file names are function-definition.ts and function-definition.spec.ts, not rsc-function-definition.ts and rsc-function-definition.spec.ts. The links should be:
  • Rule Source: https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-rsc/src/rules/function-definition.ts
  • Test Source: https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-rsc/src/rules/function-definition.spec.ts
    packages/plugins/eslint-plugin-react-rsc/src/rules/function-definition.mdx:25
  • The description uses "React Client/Server Function definitions" but the rule implementation at line 22 of function-definition.ts uses "React Client/Server Function definitions" while the overview.mdx at line 129 uses "React Server/Client Function definitions". This inconsistency should be resolved. Based on the rule's focus on server functions with 'use server' directives, "React Server/Client Function definitions" or just "React Server Function definitions" would be more accurate.
    packages/plugins/eslint-plugin-react-rsc/src/rules/function-definition.ts:22
  • The description uses "React Client/Server Function definitions" but the overview documentation at line 129 of apps/website/content/docs/rules/overview.mdx uses "React Server/Client Function definitions". These should be consistent. Based on the rule's focus on server functions with 'use server' directives, "React Server Function definitions" or "React Server/Client Function definitions" would be more accurate and consistent.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread packages/plugins/eslint-plugin-react-rsc/README.md
Comment thread packages/plugins/eslint-plugin/src/configs/all.ts

Copilot AI commented Feb 2, 2026

Copy link
Copy Markdown
Contributor

@Rel1cx I've opened a new pull request, #1458, to work on those changes. Once the pull request is ready, I'll request review from you.

Copilot AI commented Feb 2, 2026

Copy link
Copy Markdown
Contributor

@Rel1cx I've opened a new pull request, #1459, to work on those changes. Once the pull request is ready, I'll request review from you.

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: REL1CX <solarflamex@hotmail.com>
@Rel1cx
Rel1cx merged commit f38d42a into main Feb 2, 2026
11 checks passed
@Rel1cx
Rel1cx deleted the eslint-plugin-react-rsc branch February 2, 2026 08:26
Rel1cx added a commit that referenced this pull request May 15, 2026
Signed-off-by: REL1CX <solarflamex@hotmail.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants