Skip to content

Conversation

@mheob-bot
Copy link
Collaborator

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@mheob/eslint-config@9.2.0

Minor Changes

  • #336 (@mheob): Add React Compiler support and config presets
    • Add React Compiler rules with conditional activation
    • Add config presets (CONFIG_PRESET_FULL_ON and CONFIG_PRESET_FULL_OFF)
    • Make jsdoc and node options optional (default true)
    • Update React rule severities
    • Update dependencies

@mheob-bot mheob-bot requested a review from mheob as a code owner December 22, 2025 10:52
@coderabbitai
Copy link

coderabbitai bot commented Dec 22, 2025

Important

Review skipped

Ignore keyword(s) in the title.

⛔ Ignored keywords (2)
  • WIP
  • chore(release)

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch changeset-release/main

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@vercel
Copy link

vercel bot commented Dec 22, 2025

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

Project Deployment Review Updated (UTC)
eslint-config Ready Ready Preview, Comment Dec 22, 2025 10:53am

@sonarqubecloud
Copy link

@claude
Copy link

claude bot commented Dec 22, 2025

PR Review - Release v9.2.0

This is a Changesets release PR that publishes the features from PR #336. The PR follows the standard Changesets workflow correctly.

✅ Positive Observations

  1. Proper Changesets Workflow: The PR correctly removes the changeset file and updates both CHANGELOG.md and package.json version - this is the expected behavior for Changesets release PRs.

  2. Semantic Versioning: Correctly bumped to 9.2.0 (minor version) which is appropriate for the new features being released (React Compiler support and config presets).

  3. Clean Changelog: The changelog entry is well-structured with clear bullet points describing all changes from PR feat(eslint): add React Compiler support #336.

🔍 Code Quality Assessment (from PR #336)

Since this is a release PR, I also reviewed the implementation from PR #336:

Strengths:

  • Type Safety: New OptionsReact interface properly extends OptionsOverrides with clear JSDoc documentation
  • Smart Defaults: reactCompiler option auto-detects babel-plugin-react-compiler package using isPackageExists()
  • Backward Compatibility: Making jsdoc and node optional with sensible defaults (true) maintains backward compatibility
  • Config Presets: CONFIG_PRESET_FULL_ON and CONFIG_PRESET_FULL_OFF provide excellent DX for quick setup
  • Conditional Rules: React Compiler rules only activate when reactCompiler: true, avoiding unnecessary linting overhead

Minor Observations:

  1. CONFIG_PRESET_FULL_ON includes all options: The preset at packages/eslint-config/src/config-presets.ts:3-26 enables ALL integrations. This might be unexpected for users who only want a subset. Consider documenting this clearly or providing additional preset variations (e.g., CONFIG_PRESET_REACT_ONLY, CONFIG_PRESET_VUE_ONLY).

  2. Missing prettier option in CONFIG_PRESET_FULL_OFF: At packages/eslint-config/src/config-presets.ts:40, stylistic: false is set but there's no prettier: false. While prettier might not be optional, this inconsistency could be confusing.

  3. React Compiler rules severity: All React Compiler rules at packages/eslint-config/src/configs/react.ts:126-144 are set to 'error' or 'warn'. Consider if all should be errors or if some could start as warnings during the adoption phase.

  4. Removed validation rules: The changes removed several rules like react/no-unstable-context-value, react/no-unstable-default-props, react/no-unused-class-component-members, and react/no-unused-state at packages/eslint-config/src/configs/react.ts:230-233. While the changeset mentions "removed deprecated rules", it would be good to verify these are truly deprecated in the plugin and not just removed.

🎯 Recommendations

For this release PR:Approve and merge

The release process is correct and the changes are production-ready.

For future improvements (post-merge):

  1. Add tests for the config presets to ensure they generate expected configurations
  2. Consider adding migration guide documentation for the new optional jsdoc/node options
  3. Document the React Compiler feature more prominently in the README with examples

📊 Risk Assessment: Low

  • All changes are additive (new features) or opt-in (React Compiler)
  • Backward compatibility is maintained
  • Default behaviors are preserved (jsdoc: true, node: true)
  • Standard changesets release workflow

Overall verdict: LGTM! 🚀 This release is ready to ship.

@kodiakhq kodiakhq bot merged commit 49a2871 into main Dec 22, 2025
10 checks passed
@kodiakhq kodiakhq bot deleted the changeset-release/main branch December 22, 2025 11:20
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