Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

[✨] Switch from Eslint to Biome #33

Closed
4 tasks
rogervila opened this issue Jul 6, 2024 · 9 comments
Closed
4 tasks

[✨] Switch from Eslint to Biome #33

rogervila opened this issue Jul 6, 2024 · 9 comments
Labels
[STAGE-2] incomplete implementation Remove this label when implementation is complete [STAGE-2] not fully covered by tests yet Remove this label when tests are verified to cover the implementation [STAGE-2] unresolved discussions left Remove this label when all critical discussions are resolved on the issue [STAGE-3] docs changes not added yet Remove this label when the necessary documentation for the feature / change is added [STAGE-3] missing 2 reviews for RFC PRs Remove this label when at least 2 core team members reviewed and approved the RFC implementation

Comments

@rogervila
Copy link

Is your feature request related to a problem?

This feature is unrelated to any problem but represents a significant performance improvement for the build step since Biome linter is much faster than Eslint.

Biome provides a migration tool that makes it a breeze to migrate the Eslint configuration.

Describe the solution you'd like

The solution would consist of a PR with the following changes:

  • Migrate Eslint configuration to Biome, including rules defined in eslint-plugin-qwik, using Biome's migration tool
  • Install Biome and uninstall Eslint-related packages from package.json
  • Modify the lint command to use Biome instead of Eslint
  • Deprecate eslint-plugin-qwik

Describe alternatives you've considered

AFAIK, Biome is the most performant linter on the market and, since it provides a migration tool, I have not considered other alternatives.

Additional context

Performance comparison between Eslint and Biome published on Biome's website:

eslint-vs-biome

@rogervila
Copy link
Author

If the request gets enough support I will start the previously mentioned PR

@PatrickJS
Copy link
Member

yes, I want to switch to Biome asap the only concerns we have are tailwind prettier plugin and qwik eslint plugin that both need to work with Biome. If there is now a path and you're willing to work with us on a PR then I don't see why not

@thejackshelton
Copy link
Member

thejackshelton commented Jul 6, 2024

Hey @rogervila! This would be amazing. Biome reduces a ton of bloat and dependencies from eslint and prettier in the starters generated from the Qwik CLI, and the performance is next level.

eslint-plugin-qwik to biome is what has held us back. Would love to help out on this.

@PatrickJS
Copy link
Member

@rogervila can you ping us in the discord so we can create a channel for this effort

@thejackshelton
Copy link
Member

Hey @rogervila! Any status updates? Would love to help you on this effort.

@shirotech
Copy link

+1 Looking forward to this being shipped

@rogervila
Copy link
Author

Hi @thejackshelton @shirotech I will start working on it next week together with @PatrickJS :)

@maiieul
Copy link

maiieul commented Jul 22, 2024

I'd absolutely love to use Biome instead of Eslint/prettier. But we'll need to make sure current users of eslint-plugin-qwik and eslint v8 aren't forced to use Biome. They might not be able to migrate if Biome isn't compatible with other tools they use.

@gioboa
Copy link
Member

gioboa commented Oct 14, 2024

We moved this issue to qwik-evolution repo to create a RFC discussion for this.
Here is our Qwik RFC process thanks.

@github-project-automation github-project-automation bot moved this to In Progress (STAGE 2) in Qwik Evolution Oct 14, 2024
@gioboa gioboa transferred this issue from QwikDev/qwik Oct 14, 2024
@github-actions github-actions bot added [STAGE-2] incomplete implementation Remove this label when implementation is complete [STAGE-2] not fully covered by tests yet Remove this label when tests are verified to cover the implementation [STAGE-2] unresolved discussions left Remove this label when all critical discussions are resolved on the issue [STAGE-3] docs changes not added yet Remove this label when the necessary documentation for the feature / change is added [STAGE-3] missing 2 reviews for RFC PRs Remove this label when at least 2 core team members reviewed and approved the RFC implementation labels Oct 14, 2024
@QwikDev QwikDev locked and limited conversation to collaborators Oct 14, 2024
@gioboa gioboa converted this issue into discussion #109 Oct 14, 2024
@github-project-automation github-project-automation bot moved this from In Progress (STAGE 2) to Released as Stable (STAGE 5) in Qwik Evolution Oct 14, 2024
@github-project-automation github-project-automation bot moved this from Backlog to Done in Qwik Development Oct 14, 2024
@shairez shairez removed this from Qwik Evolution Oct 15, 2024

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
[STAGE-2] incomplete implementation Remove this label when implementation is complete [STAGE-2] not fully covered by tests yet Remove this label when tests are verified to cover the implementation [STAGE-2] unresolved discussions left Remove this label when all critical discussions are resolved on the issue [STAGE-3] docs changes not added yet Remove this label when the necessary documentation for the feature / change is added [STAGE-3] missing 2 reviews for RFC PRs Remove this label when at least 2 core team members reviewed and approved the RFC implementation
Projects
None yet
Development

No branches or pull requests

6 participants