chore(deps): replace jsx-ast-utils with jsx-ast-utils-x
What is it?
- Infra
Description
This PR replaces a very heavy jsx-ast-utils package with a much lighter alternative jsx-ast-utils-x, which has compatible API and zero dependencies.
A very popular ESLint plugin, eslint-plugin-sonarjs, has already performed this switch (see the original issue).
After this change the dependency graph and installation size of eslint-plugin-qwik package should reduce significantly.
Checklist
- [x] My code follows the developer guidelines of this project
- [x] I performed a self-review of my own code
- [x] I added a changeset with
pnpm change
🦋 Changeset detected
Latest commit: ebcf7db4ea8334b9b9c9eb352a5c9916020e737e
The changes in this PR will be included in the next version bump.
This PR includes changesets to release 5 packages
| Name | Type |
|---|---|
| eslint-plugin-qwik | Patch |
| @builder.io/qwik | Patch |
| @builder.io/qwik-city | Patch |
| create-qwik | Patch |
| @builder.io/qwik-react | Patch |
Not sure what this means? Click here to learn what changesets are.
Click here if you're a maintainer who wants to add another changeset to this PR
npm i https://pkg.pr.new/@builder.io/qwik@7938
npm i https://pkg.pr.new/@builder.io/qwik-city@7938
npm i https://pkg.pr.new/eslint-plugin-qwik@7938
npm i https://pkg.pr.new/create-qwik@7938
commit: cf45df3
built with Refined Cloudflare Pages Action
⚡ Cloudflare Pages Deployment
| Name | Status | Preview | Last Commit |
|---|---|---|---|
| qwik-docs | ✅ Ready (View Log) | Visit Preview | ebcf7db4ea8334b9b9c9eb352a5c9916020e737e |
@andreww2012 Apart faster npm i are there any other benefits to reducing the dep graph? Have you been able to measure faster performance when running the eslint plugin?
@maiieul I don't know, and I also haven't done any performance testing. I actually don't work with qwik codebase 😄
I'm working on an ultimately universal ESLing config, which eslint-plugin-qwik is a part of, and trying to improve ESLint plugins it's comprised of in various ways.
Ok. Thanks for sharing. I'm a bit concerned about the maintenance cost if it stop being maintained, but the other one doesn't seem to be updated a lot either. So I will merge. Relying on less dependencies is likely a good thing :)
May I ask you to rebase?