Skip to content

Repo: migrate eslint-plugin-import to eslint-plugin-import-x #11212

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

Open
JounQin opened this issue May 14, 2025 · 8 comments · May be fixed by #11217
Open

Repo: migrate eslint-plugin-import to eslint-plugin-import-x #11212

JounQin opened this issue May 14, 2025 · 8 comments · May be fixed by #11217
Labels
awaiting response Issues waiting for a reply from the OP or another party repo maintenance things to do with maintenance of the repo, and not with code/docs triage Waiting for team members to take a look

Comments

@JounQin
Copy link
Contributor

JounQin commented May 14, 2025

Suggestion

eslint-plugin-import-x is a modern fork of eslint-plugin-import with cleaner dependencies and supports exports better.

And it's powered by @typescript-eslint/utils under the hood.

Additional Info

No response

@JounQin JounQin added triage Waiting for team members to take a look repo maintenance things to do with maintenance of the repo, and not with code/docs labels May 14, 2025
@JoshuaKGoldberg
Copy link
Member

cleaner dependencies and supports exports better

I believe you, but can you back this up please? 🙂

As in: I'm totally on board with e18e initiatives, just we need details before jumping onto something new.

  • Cleaner dependencies: what's different? what's the new dep tree? how does that look in this repo, given its other devDeps?
  • Supports exports better: what does that mean? How does that practically impact us?

@JoshuaKGoldberg JoshuaKGoldberg added awaiting response Issues waiting for a reply from the OP or another party and removed triage Waiting for team members to take a look labels May 14, 2025
@JounQin
Copy link
Contributor Author

JounQin commented May 14, 2025

@JoshuaKGoldberg Sorry for the confusing, I definitely should add a Why or Different with eslint-plugin-import section in README: un-ts/eslint-plugin-import-x#196, before that lands, just quote from another PR: shlinkio/js-coding-standard#129 (comment), see also un-ts/eslint-plugin-import-x#24.

Supports exports better: what does that mean? How does that practically impact us?

Could be no issue here for tseslint but eslint-plugin-import itself: import-js/eslint-plugin-import#2703, whenever tseslint adds/updates a dependencies only provide exports field, there will be an issue then.

@JoshuaKGoldberg
Copy link
Member

Those are good links, thanks. My vote is to mark this as blocked on having actual benchmarks / metrics showing why eslint-plugin-import-x would be better for our use case.

I hope+think this should be a pretty straightforward blocker to resolve:

@JoshuaKGoldberg JoshuaKGoldberg added the triage Waiting for team members to take a look label May 14, 2025
@JounQin
Copy link
Contributor Author

JounQin commented May 14, 2025

I'll run a benchmark for you by preparing a PR for it.

JounQin added a commit to JounQin/typescript-eslint that referenced this issue May 14, 2025
@JounQin JounQin linked a pull request May 14, 2025 that will close this issue
3 tasks
@JounQin
Copy link
Contributor Author

JounQin commented May 14, 2025

@JoshuaKGoldberg Here we go: #11217

@benmccann
Copy link
Contributor

eslint-plugin-import-x is a modern fork of eslint-plugin-import with cleaner dependencies

While that's true, this repo unfortunately wouldn't benefit much unless eslint-plugin-jsx-a11y is also switched for another plugin as it pulls in the same set of dependencies: http://npmgraph.js.org/?q=eslint-plugin-jsx-a11y

@JounQin
Copy link
Contributor Author

JounQin commented May 14, 2025

While that's true, this repo unfortunately wouldn't benefit much unless eslint-plugin-jsx-a11y is also switched for another plugin as it pulls in the same set of dependencies

That's unfortunate https://github.com/es-tooling/eslint-plugin-jsx-a11y-x is only a placeholder package now, I may offer some help when I'm free enough.

And I don't think we should migrate all at once, zero vs all.

@JounQin
Copy link
Contributor Author

JounQin commented May 14, 2025

@JoshuaKGoldberg For the document part, please help to review un-ts/eslint-plugin-import-x#323.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting response Issues waiting for a reply from the OP or another party repo maintenance things to do with maintenance of the repo, and not with code/docs triage Waiting for team members to take a look
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants