Skip to content
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

Possibility of replacing rimraf and chalk with native node functionality #1716

Open
fl0werpowers opened this issue Jan 10, 2025 · 2 comments
Labels
enhancement New feature or request

Comments

@fl0werpowers
Copy link

This project relies on two packages that were identified by the e18e effort as redundant, both of which have replacements that are native to Node.js as of v20, the minimum version required for Quartz to function. Removing both packages would cut out 34 dependencies with approximately 0.31MiB in size.

Describe the solution you'd like
I maintain a private quartz fork, in which I identified that both rimraf and chalk can be viably replaced by node equivalents, as suggested by documentation in es-tooling/module-replacements:

  • chalk can be replaced with styleText function, available as of node v20, the minimum required version for quartz
  • rimraf can be replaced with fs.rm function, available as of node v14.14

So far, my edits seem to work fine, and could be ported to the main repo without any obvious issues. I did not do any comprehensive testing besides building and running npm run test, though, so it would make sense to do some additional checks.

@fl0werpowers fl0werpowers added the enhancement New feature or request label Jan 10, 2025
@fl0werpowers
Copy link
Author

I could start working on a pull request pretty much immediately if there is interest in this. The change may seem small, but it stacks up both on the client and in terms of traffic consumed during package pulls, which is one of the primary things e18e seeks to reduce.

@jackyzha0
Copy link
Owner

go ahead, sounds good to me!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants