⚓️ Oxlint 1.0 版本发布,比 ESLint 快50 到 100 倍!🚀🚀🚀

前言

今天下午,Voidzero 团队宣布 Oxlint 发布稳定的 1.0 版本。该版本的性能相比 ESLint 提升了 50100 倍,支持超过 500ESLint 规则。此外,Oxlint 已被 ShopifyAirbnb梅赛德斯-奔驰 等知名公司采用,这进一步证明了其在代码检查领域的实力和潜力!

往期精彩推荐

正文

Oxlint 是一款基于 RustJavaScriptTypeScript 代码检查器,旨在快速且易于上手。自 202312 月首次发布以来,Oxlint 经历了重大改进,现已发布其首个稳定版本 1.0

Oxlint 提供了多项强大的功能,使其在代码检查领域脱颖而出:

规则覆盖

支持超过 500 条规则,包括所有 ESLint 规则、TypeScript 规则(不包括类型检查),以及 unicornjsdocreactreact-hooksjestimport 等插件。此外,Oxlint 还提供了一些独特的规则!

例如 bad-comparison-sequenceconst-comparisonsonly-used-in-recursion

灵活配置

支持嵌套配置、覆盖(overrides)和共享配置(shared configs),允许开发者根据项目需求灵活定制。

编辑器集成

支持多种编辑器扩展,方便开发者在日常开发中无缝使用。

友好的诊断信息

提供清晰的错误消息和可视化效果,帮助开发者快速定位和修复代码问题。

性能表现

Oxlint 的性能是其最大亮点之一。根据官方基准测试:

github.com/oxc-project...

Oxlint 在多线程模式下仅需 615.3 毫秒完成代码检查,而 ESLint 需要 33.481 秒,速度相差约 50~100 倍。以下是性能对比表:

工具 时间
Oxlint(多线程) 615.3 毫秒
Oxlint(单线程) 1.840
ESLint 33.481

这种性能优势使得 Oxlint 特别适合处理大型代码库,例如包含 264,925 个文件的仓库,使用 101 条规则和 10 个线程,仅需 22.5 秒,处理速度约为每秒 10,000 个文件。

快速上手

Oxlint 的安装和使用非常简单,无需复杂配置即可运行。开发者可以通过以下命令快速开始:

bash 复制代码
npx oxlint@latest

Oxlint 支持基于 ESLint v8 的平面配置文件 .oxlintrc.json,并提供迁移工具,如:

详细安装指南可参考 Oxlint 文档:oxc.rs/docs/guide/...

未来计划

Oxlint 开发团队计划在未来推出以下功能:

  • 自定义规则 :即将支持 JavaScript 插件,允许开发者创建自定义规则。
  • 性能优化:持续改进性能以保持领先优势。
  • Per-glob 配置 :类似 ESLint v9 的按文件模式配置功能。

最后

Oxlint 1.0 的发布标志着 JavaScriptTypeScript 代码检查工具领域的一个重要里程碑,Oxlint 的未来发展值得期待!

原官方博客看这里:voidzero.dev/posts/annou...

今天的分享就这些了,感谢大家的阅读,如果文章中存在错误的地方欢迎指正!

往期精彩推荐

相关推荐
qingyun98916 小时前
深度优先遍历:JavaScript递归查找树形数据结构中的节点标签
前端·javascript·数据结构
胡楚昊16 小时前
NSSCTF动调题包通关
开发语言·javascript·算法
熬夜敲代码的小N16 小时前
Vue (Official)重磅更新!Vue Language Tools 3.2功能一览!
前端·javascript·vue.js
90后的晨仔16 小时前
用 Python 脚本一键重命名序列帧图片的名称
前端
辰同学ovo16 小时前
Vue 2 路由指南:从入门到实战优化
前端·vue.js
小彭努力中16 小时前
1.在 Vue 3 中使用 Cesium 快速展示三维地球
前端·javascript·vue.js·#地图开发·#cesium·#vue3
一棵开花的树,枝芽无限靠近你16 小时前
【face-api.js】1️⃣基于Tensorflow.js的人脸识别项目开源项目
javascript·开源·tensorflow·face-api.js
一字白首16 小时前
Vue3 进阶,新特性 defineOptions/defineModel+Pinia 状态管理全解析
前端·javascript·vue.js
90后的晨仔16 小时前
🛠️ 为什么配置 ~/.ssh/config 后,Sourcetree 就能正常推送了?
前端
Sylus_sui16 小时前
Vue2 与 Vue3 数据双向绑定:区别与原理详解
前端·javascript·vue.js