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
📈 Tracking: Flat Config support #18093
Comments
What counts as “supported”? eslint-plugin-simple-import-sort is currently marked as “❌ Not supported; no issue filed”. I got curious and tried to use it with this flat config: import simpleImportSort from "eslint-plugin-simple-import-sort";
export default [
{
plugins: {
"simple-import-sort": simpleImportSort,
},
rules: {
"simple-import-sort/imports": "error",
"simple-import-sort/exports": "error",
}
}
]; It worked! What does it take to earn the precious ✅ emoji? |
@lydell in your case you're pretty close already because the plugin provides no configs, no processors, no globals, etc. Your plugin will "just work" in flat configs because of that. The only thing you're really missing is plugin metadata: https://eslint.org/docs/latest/extend/plugin-migration-flat-config#adding-plugin-meta-information |
xo does not support it yet: xojs/xo#702 |
Another level of "support" is for the ESLint plugin packages to have TypeScript types. I intend to have type-safe ESLint flat config in my projects, and many ESLint plugins currently don't publish types for their exports, because before flat config it was ESLint that was importing the modules, instead of consumers in their projects. Some plugin packages that export types are broken for TypeScript in It would be great if the tracking table in this issue description were to have another status column for TypeScript support. |
Thanks a great idea @jaydenseric, adding now! (sorry for the delay) I'm also adding |
Hi, I created a PR to support flat config at eslint-plugin-mocha repository: lo1tuma/eslint-plugin-mocha#349 EDIT: The PR was merged and shipped as eslint-plugin-mocha 10.4.0. |
Would be good to get eslint-community/eslint-utils#183 / eslint-community/eslint-utils#186 in there as well, as it may be a blocker for quite a few other modules |
Can |
What's the officially suggested peer-dependency range for someone who wants to support eg. ESLint 8 and later, including pre-releases of ESLint 9? I think the algorithm for npm is what causes some struggles with some here: npm/rfcs#397 (comment) And as I wrote in eslint-community/eslint-utils#183 (comment), I think |
FYI, that plugin was renamed to |
Would it be possible to add npm eslint-plugin-no-use-extend-native with tracking issue dustinspecker/eslint-plugin-no-use-extend-native#136 ? |
@jlarmstrongiv Out of curiosity: is it even maintained? the last version was published ~4 years ago! |
It may not be maintained but it sure is popular. |
I've just merged and release flat support for eslint-plugin-vuejs-accessibility in version |
Voila: #18391. Good idea! Note that #18391 only tracks plugins that already have flat config support. I didn't want that table to become a superset of this one - that'd be harder to read and also harder to maintain. So that table has a much higher percentage of ✅s than this one. 😄 I also added a small note to the bottom of each post: these aren't automatically updated. I just update them every time I'm pinged, or when I have spare minutes a few times a week. If something gets out-of-date for more than a couple of days, please do post a note here and we'll get that updated. 🚀 |
It's worth noting that since #18087 is a blocker for the import plugin, it's also a blocker for the airbnb and airbnb-base configs (the latter of which isn't in the table yet), and for the react and jsx-a11y plugins. |
@ljharb just to clarify: why does it also block the |
oh actually you're right, that's about blocking v9 support, not about flat config. |
@controversial yes, but eslint hasn't shipped that yet, and seemingly won't until i'm able to confirm that approach would work. |
@ljharb oh yeah - that makes sense. so to my understanding,
|
Yes, except for the last step - i'm not shipping any breaking changes, so v9 support would be additive. |
@JoshuaKGoldberg I think you might have the wrong issue for |
eslint-plugin-sonar v1.0.3 now supports the flat config |
👋 Hi all! With flat config stabilized and ESLint v9 on the horizon, many community plugins are adding native support for flat config. The Configuration Migration Guide provides docs on how to do that.
This is a tracking issue of the
~50~65 or so most popular community integrations and plugins for ESLint. We'll keep this list updated over time.📌 Status and Types emoji key:
@graphql-eslint
@nuxt/eslint
@react-native-community
@typescript-eslint
angular
astro
compat
cypress
deprecation
ember
es-x
eslint-comments
eslint-plugin
functional
import
import-x
jsdoc
jsonc
jest
jest-formatting
jsx-expressions
jsx-ally
markdown
mocha
n
next
nx
perfectionist
playwright
prettier
promise
qunit
regexp
react-hooks
react
react-native
security
simple-import-sort
solid
sonarjs
storybook
stylistic
svelte
tailwindcss
testing-library
unicorn
vitest
vue
vue-i18n
vuejs-accessibility
wdio
yml
airbnb
airbnb-typescript
canonical
prettier
standard
3d1284
standard-with-typescript
@rushstack/eslint-patch
@types/eslint
create-config
eslint-find-rules
eslint-utils
xo
Task list of issues/PRs on projects that didn't have released support yet at time of filing:
eslint-config-next
in flat config vercel/next.js#58411Keep in mind that this list isn't automatic: I'm hand-editing it. Please report any inaccuracies or out-of-date information! ❤️
The text was updated successfully, but these errors were encountered: