-
Notifications
You must be signed in to change notification settings - Fork 63
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
feat: support new config system #210
Conversation
|
I also wrote README. And I've taken care to make sure this PR is not a breaking change. |
@nzakas May I ping? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add a unit test for new config system?
@kecrily Maybe later? |
Superseded by #232 |
Supporting eslint's new config system of eslint.
The legacy config system always has
require()
d plugins and sharable configs, while the new system is available in both ESM and CJS.Therefore conditional export is great to keep compatibility while introducing the new config.
plugin:
protocol(e.g.plugin:markdown/recommended
) is not valid any more. In the new config system, a bi-directional dependency between a plugin object and a preset config object is detached. From now on, only a config object should depend on a plugin object, not vice-versa. Thus, the new plugin (a new entry point index.js) doesn't haveconfigs
property, following the spec, though having the property does not mean incompatibility.Users should have a way to import shareable config independently.
Hence
eslint-plugin-markdown/recommended
is introduced as a new entry point for it.