ESLint v9.23.0 版本发布:TypeScript 支持增强与规则优化
ESLint 作为 JavaScript 和 TypeScript 代码质量检查工具的最新版本 v9.23.0 已经发布。这个版本带来了多项重要改进,特别是在 TypeScript 语法支持方面有了显著增强,同时修复了一些关键问题并优化了文档体验。
TypeScript 语法支持增强
本次更新中,多个核心规则新增了对 TypeScript 语法的支持:
-
no-useless-constructor 规则 现在能够正确处理 TypeScript 中的构造函数重载和参数属性等特性。这使得 TypeScript 项目能够更准确地检测不必要的构造函数定义。
-
default-param-last 规则 新增了对 TypeScript 默认参数的支持。该规则要求带有默认值的参数必须放在参数列表的最后,现在能够正确识别 TypeScript 中的默认参数位置。
-
class-methods-use-this 规则 现在能够正确处理 TypeScript 类方法中的 this 类型注解。这对于 TypeScript 项目中识别未使用 this 的类方法非常有帮助。
配置系统改进
新版本引入了对 defineConfig() 函数的增强支持,现在可以直接使用 "flat/" 前缀来定义扁平化配置。这是对 ESLint 新配置系统的重要补充,使得迁移到扁平化配置更加方便。
自动修复与规则冲突检测
v9.23.0 版本新增了循环自动修复和规则冲突检测功能。这一改进能够帮助开发者识别规则之间的潜在冲突,并防止无限循环的自动修复情况发生,提高了工具的稳定性和可靠性。
重要问题修复
本次更新修复了几个关键问题:
-
no-useless-assignment 规则 现在能够正确识别 catch 块中使用的变量,避免了误报情况。
-
no-dupe-keys 规则 修复了与原型设置器相关的误报问题,提高了规则的准确性。
-
改进了搜索结果的导航体验,现在按下 Enter 键能够正确导航到搜索结果。
文档与用户体验改进
文档方面进行了多项优化:
-
为 TypeScript 示例添加了红色下划线标记,使示例更加清晰易读。
-
大量示例代码从 var 更新为 const 或 let,符合现代 JavaScript 最佳实践。
-
新增了代码复制按钮,提升了文档的易用性。
-
迁移到 Sass 模块系统,改进了样式管理。
构建与工具链更新
构建系统方面也有多项改进:
-
排除了自动生成的文件不受 Prettier 格式化影响。
-
更新了多个依赖项版本。
-
引入了 Prettier 格式化工具,统一了代码风格。
-
测试框架从 WebdriverIO 迁移到 Cypress,提升了测试效率和可靠性。
总结
ESLint v9.23.0 版本在 TypeScript 支持、规则准确性、配置系统和文档体验等方面都有显著提升。这些改进使得 ESLint 在现代 JavaScript 和 TypeScript 项目中的表现更加出色,为开发者提供了更强大的代码质量保障工具。对于正在使用或考虑使用 ESLint 的团队来说,升级到这个版本将获得更好的开发体验和更准确的代码检查结果。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust099- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiMo-V2.5-ProMiMo-V2.5-Pro作为旗舰模型,擅⻓处理复杂Agent任务,单次任务可完成近千次⼯具调⽤与⼗余轮上 下⽂压缩。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00