Skip to content

Conversation

@Rel1cx
Copy link
Owner

@Rel1cx Rel1cx commented Aug 28, 2025

  • Add CompatibleConfig and CompatiblePlugin interface definitions
  • Update all plugin packages to use new compatibility types
  • Add documentation for new compatibility interfaces
  • Update package.json files across examples and packages
  • Add compatibility-types.ts to shared package

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Docs
  • Test
  • 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

…#1200

- Add CompatibleConfig and CompatiblePlugin interface definitions
- Update all plugin packages to use new compatibility types
- Add documentation for new compatibility interfaces
- Update package.json files across examples and packages
- Add compatibility-types.ts to shared package
@vercel
Copy link

vercel bot commented Aug 28, 2025

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

Project Deployment Preview Comments Updated (UTC)
eslint-react Building Building Preview Comment Aug 28, 2025 2:46pm

@Rel1cx Rel1cx marked this pull request as ready for review August 28, 2025 14:46
@Rel1cx Rel1cx requested a review from Copilot August 28, 2025 14:46
Copy link
Contributor

Copilot AI left a 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 PR adds ESLint compatibility types and updates plugin exports to improve compatibility with both defineConfig() and tseslint.config(). The changes introduce intentionally wide type definitions that serve as a bridge between different ESLint configuration systems.

  • Add CompatibleConfig and CompatiblePlugin interface definitions with flexible typing
  • Update all plugin packages to use the new compatibility types instead of as const assertions
  • Standardize function naming from makeConfig/makeLegacyConfig to toFlatConfig/toLegacyConfig across plugins

Reviewed Changes

Copilot reviewed 40 out of 41 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
packages/shared/src/compatibility-types.ts Defines new CompatiblePlugin and CompatibleConfig interfaces with loose typing
packages/shared/src/index.ts Exports the new compatibility types
packages/plugins/eslint-plugin/src/index.ts Updates main plugin to use CompatiblePlugin type and restructures exports
packages/plugins/*/src/plugin.ts Updates all plugin definitions to use CompatiblePlugin type
packages/plugins/*/src/index.ts Renames config helper functions and adds CompatibleConfig import
various package.json files Updates @types/react-dom version and removes --dts-resolve build flag

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@socket-security
Copy link

@Rel1cx Rel1cx merged commit 1476353 into 2.0.0 Aug 28, 2025
9 checks passed
@Rel1cx Rel1cx deleted the feature/compatibility-types branch August 28, 2025 20:54
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.

2 participants