Skip to content

chore(lint): Use shared eslint config#1724

Open
fb55 wants to merge 10 commits intomasterfrom
shared-config
Open

chore(lint): Use shared eslint config#1724
fb55 wants to merge 10 commits intomasterfrom
shared-config

Conversation

@fb55
Copy link
Owner

@fb55 fb55 commented Feb 21, 2026

No description provided.

Copilot AI review requested due to automatic review settings February 21, 2026 23:16
Copy link

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 migrates the project from a legacy ESLint configuration (.eslintrc.json) to a modern flat configuration format (eslint.config.mjs) using a shared ESLint config package (@feedic/eslint-config). The PR also updates Biome configuration, adds ESLint v10 as a linter, reorganizes package.json scripts, and updates several development dependencies.

Changes:

  • Removed test/.eslintrc.json and added eslint.config.mjs with flat config format
  • Added ESLint v10, typescript-eslint, and related packages to enable comprehensive linting
  • Updated biome.json with stricter rules and better file filtering
  • Reorganized package.json scripts to run both Biome and ESLint linters

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
test/.eslintrc.json Removed legacy ESLint configuration file
package.json Added new ESLint-related dependencies, updated scripts, reordered exports, and updated biome version
package-lock.json Added lockfile entries for new ESLint v10 ecosystem packages and dependencies
eslint.config.mjs New flat ESLint configuration with TypeScript and test-specific rules
biome.json Updated schema, enabled recommended rules, refined file includes, and updated formatting
Comments suppressed due to low confidence (4)

eslint.config.mjs:12

  • The import statement import { defineConfig } from "eslint/config"; may not be correct for ESLint v10. According to ESLint v10 documentation, the flat config format doesn't require a defineConfig wrapper function - you can export the array directly. The defineConfig helper is typically associated with other tools like Vite or Vitest. Consider removing the defineConfig wrapper and exporting the array directly as export default [...].
import { defineConfig } from "eslint/config";
import eslintConfigPrettier from "eslint-config-prettier";
import globals from "globals";
import tseslint from "typescript-eslint";

const gitignorePath = fileURLToPath(new URL(".gitignore", import.meta.url));

export default defineConfig([

biome.json:9

  • The ignoreUnknown setting changed from false to true, which means Biome will now ignore files with unknown extensions instead of reporting them as errors. While this is generally safer and less noisy, ensure this aligns with the project's goals. Previously, unknown file types would have been flagged, which could help catch configuration issues or unexpected files.
        "ignoreUnknown": true,

biome.json:25

  • The recommended setting changed from false to true, which enables all of Biome's recommended lint rules. This is a significant change that could introduce new linting errors across the codebase. Ensure that the codebase has been validated against these new rules or that the specific rules that should remain disabled are explicitly turned off in the configuration.
            "recommended": true,

biome.json:14

  • The file pattern "!**/.*" in the includes array will exclude all dotfiles (files starting with a dot). However, in glob patterns, negations typically belong in an excludes or ignores array rather than includes. The includes array should contain positive patterns for what to include. Consider moving this pattern to an appropriate exclude/ignore configuration if Biome supports it, or verify that this syntax is correct for Biome's configuration format.
            "!**/.*"

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

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