-
Notifications
You must be signed in to change notification settings - Fork 2
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
v4: move to flat config, support ESLint v9 and friends, migrate plugins, and more #348
Draft
G-Rath
wants to merge
40
commits into
main
Choose a base branch
from
upgrade/all
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
G-Rath
requested review from
nzlaura,
eoinkelly,
lukeify,
joshmcarthur,
robotdana,
KristenEKelly,
PixeldroidAU,
simonchisnall-online,
stvmachine,
hopkincame and
justineleonard
November 28, 2024 23:32
BREAKING CHANGE: ESLint v7 is no longer supported
BREAKING CHANGE: `@typescript-eslint/*` v6 is no longer supported
BREAKING CHANGE: `eslint-plugin-jest` v27 is no longer supported
…omments` The maintainer of the original plugin has disappeared, so the community have launched a fork. Migration: 1. Remove `eslint-plugin-eslint-comments` dependency 2. Add `@eslint-community/eslint-plugin-eslint-comments` dependency 3. Replace any references to `eslint-comments` in `.eslintrc.js` and comments (such as ignore directives) with `@eslint-community/eslint-comments` BREAKING CHANGE
The maintainer of the original plugin has disappeared, so the community have launched a fork. Migration: 1. Remove `eslint-plugin-node` dependency 2. Add `eslint-plugin-n` dependency 3. Replace any references to `node` in `.eslintrc.js` and comments (such as ignore directives) with `n` BREAKING CHANGE
BREAKING CHANGE: you must now install `@stylistic/eslint-plugin-js`
BREAKING CHANGE: you must now install `@stylistic/eslint-plugin-ts`
TypeScript has won and `eslint-plugin-flowtype` hasn't been updated in years so doesn't support ESLint v9. BREAKING CHANGE: `flowtype` config is no longer available
BREAKING CHANGE: configs are now flat by default, unless `ESLINT_USE_FLAT_CONFIG` is `'false'`
BREAKING CHANGE: you must now ensure `@eslint/js` is installed
…ys use a single major
This rule means well but the reality is that it's very convenient to use arrow functions inline and the performance impact is hotly debated which is a sign that it's at best very situational.
The rule has been deprecated in favor of `eslint-plugin-perfectionist`, and it's not clear if the rule is useful enough to justify the additional plugin, so for now we're just doing to remove it
…ng `@eslint/config-inspector` See eslint/config-inspector#63
BREAKING CHANGE: you must now use `typescript` instead of `@typescript-eslint`
…` v7 For some reason without this we get errors about strict null checks not being enabled from the TypeScript config, but only _after_ it's renamed to `typescript` and if `process.env.CI` is `true`
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is branched off #347
This does a bunch of updates to our configs in the name of supporting ESLint v9 and the new flat configuration system - in the process, I've also migrated some deprecated plugins, removed our
flowtype
config as we don't want anyone doing Flow, renamed the@typescript-eslint
config totypescript
, and more.I've structured each commit with a description of the change and migration notes where needed, and there's already been discussion in our internal Slack so I won't repeat stuff in this description 🙂