比 ESLint 快50倍的OxLint 发布了!

告诉大家一个好消息,OxLint 现在正式发布了!OxLint 是一个 JavaScript 代码检查工具,与 ESLint 类似,但它不需要复杂的配置,能够帮助我们捕捉错误或无用代码。与 ESLint 相比,OxLint 使用 Rust 编写,速度非常快,大约比 ESLint 快 50 ~ 100 倍。

尤大也惊叹它的性能绝对的疯狂的:

为什么选择 OxLint?

OxLint 的速度之快令人惊叹。实际场景中,Shopify 表示他们原本需要运行 75 分钟的 ESLint,现在只需 10 秒钟就能完成相同的 lint 操作。这使得在 lint-staged 或 CI 设置中运行 OxLint 的大型项目的速度显著提升。如果您的工作流程受到 ESLint 速度的限制,OxLint 可以作为一个增强工具来使用。

如何使用 OxLint?

要在 JavaScript / TypeScript 代码库中使用 OxLint,只需在存储库的根目录下执行以下命令:

  • npx oxlint@latest
  • pnpm dlx oxlint@latest
  • yarn dlx oxlint@latest
  • bunx oxlint@latest
  • deno run oxlint@latest

如果有错误,命令行会抛出详细的警告。此外,还有一个 VSCode 插件可供使用,您可以在插件市场搜索 “oxc” 来找到它。

使用语法如下,更多参数细节可查阅官网:

Usage: oxlint [-A=NAME | -D=NAME]... [--fix] [PATH]...

OxLint 的设计特点

比 ESLint 快 50-100 倍

OxLint 是专为性能而设计的。它利用 Rust 和并行处理的优势,使得它的速度比 ESLint 快 50 ~ 100 倍。以下数据来自官方对比执行时间,其速度是相当惊人。

Benchmark 1: oxc
  Time (mean ± σ):     424.0 ms ±   2.2 ms    [User: 2243.9 ms, System: 373.6 ms]
  Range (min … max):   420.9 ms … 427.0 ms    10 runs

Benchmark 2: eslint
  Time (mean ± σ):     24.904 s ±  0.624 s    [User: 40.804 s, System: 1.691 s]
  Range (min … max):   24.292 s … 26.469 s    10 runs

Summary
  'oxc' ran
   58.73 ± 1.50 times faster than 'eslint'

代码检查

OxLint 默认识别错误、冗余或混乱的代码,优先考虑正确性而不是一些吹毛求疵的规则。它的分类借鉴自 clippy 的分类规则,一旦熟悉,这样的分类非常方便和好用。

使用便捷

OxLint 的设计目标之一是简化配置。它以零配置的方式出现,不需要配置文件,甚至不需要 Node.js。大多数调整可以通过命令行完成,目前还在进行与 ESLint 配置文件的兼容性工作。

增强诊断

OxLint 旨在通过定位根本原因并提供有用的信息来简化对 lint 工具信息的理解。它的报错信息易于读懂,使得开发者能够更轻松地修复问题。

统一规则

尽管 OxLint 目前尚未提供插件系统,但它正在积极整合来自流行插件如 TypeScript、React、Jest、Unicorn、JSX-a11y 和 Import 的规则。未来,OxLint 还计划引入基于 DSL 的插件系统。

结语

OxLint 的发布为开发者带来了更快速的代码检查工具。它的速度之快令人惊叹,特别适用于大型项目和 lint-staged 或 CI 设置。希望 OxLint 给你带来更愉悦的开发体验!


看完本文如果觉得有用,记得点个赞支持,收藏起来说不定哪天就用上啦~

专注前端开发,分享前端相关技术干货,公众号:南城大前端(ID: nanchengfe)

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南城FE

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值