ESLint v9.0.0 正式发布,带来重大更新及破坏性更改!

ESLint v9.0.0 正式发布,带来重大更新及破坏性更改!ESLint是一个插件化的代码检测工具,它可以静态分析代码,快速发现问题。它可以内置在大多数文本编辑器中,开发者可以将 ESLint 作为 De

大家好,欢迎来到IT知识分享网。

ESLint v9.0.0 正式发布,带来重大更新及破坏性更改!

ESLint是一个插件化的代码检测工具,它可以静态分析代码,快速发现问题。它可以内置在大多数文本编辑器中,开发者可以将 ESLint 作为 DevOps 的一部分来运行。下面是最近几次发布的版本主要特性回顾:

  • v7.0.0 – 放弃对 Node.js 8 的支持,改进开发者体验。
  • v8.50.0 – 弃用 no-new-object 规则,取而代之的是新的 no-object-constructor 规则。
  • v8.56.0 – 报告未使用的禁用指令时支持自定义严重程度。
  • v8.0.0 – 默认解析器和所有核心规则完全支持 ES2022 类的公共、私有方法及私有字段。

2023年09月23日,在 ESLint v8.50.0 版本发布时,ESLint 官推发布消息:ESLint 计划在 v9.0.0 中放弃对 Node.js < 18 和 Node.js 19 的支持。

2024年04月05日,经过近半年的迭代,ESLint v9.0.0 正式发布,下面来看看本次版本带来的重点更新。

放弃对 Node.js < v18.18.0、v19 的支持

随着 Node.js v20.x 将成为 LTS 版本,ESLint 将不再支持 v18.18.0 之前的所有 Node.js 版本以及 v19.x。

默认启用 Flat config

Flat config 现在是 ESLint 的默认配置格式,eslintrc 已被正式弃用。要继续使用 eslintrc 配置文件,需要将 ESLINT_USE_FLAT_CONFIG 环境变量设为 false。

这一变更会影响到用户、插件开发人员和集成人员,因为 ESLint 的许多方面都必须为此做出改变。此版本还引入了配置检查器,可使用 –inspect-config 在命令行上启动。

删除众多 formatter

删除了除 stylish、html、json 和 jsonon-with-meta 以外的所有 formatter:

  • checkstyle
  • compact
  • jslint-xml
  • junit
  • tap
  • unix
  • visualstudio

如果您目前正在使用这些格式化器,则需要安装独立软件包,以便与 ESLint v9.0.0 一起使用。

删除 valid-jsdoc 和 require-jsdoc 规则

ESLint 移除了 valid-jsdoc 和 require-jsdoc。建议使用 eslint-plugin-jsdoc 插件。

删除 context and SourceCode 中已废弃的方法

正如在九月份宣布的那样,ESLint 已经删除了上下文中的大量废弃方法,并用源代码中的方法取而代之。

eslint:recommended 更新

更新了 eslint:recommended 配置,以纳入 ESLint 认为重要的新规则,并删除过时和不太重要的规则。

新规则:no-useless-assignment

ESLint v9.0.0 引入了一条新规则 –no-useless-assignment,旨在捕捉为变量赋值但该值从未被使用的情况。例如:

let id = 1234; // 1234 is never used id = calculateId();

新 API:loadESLint()

ESLint 现在从其主入口导出了一个新函数 loadESLint()。集成程序可使用该函数获取 ESLint 类(原 FlatESLint 类)或 LegacyESLint 类(原 ESLint 类),从而在 flat config 和 eslintrc API 之间轻松切换。

不允许同一规则包含多个 eslint 注释

在 ESLint v8.x,如果被标记的文件包含多个针对同一规则的 /* eslint */ 配置注释,最后一个注释将被应用,而其他注释将被静默忽略。

在 ESLint v9.0.0 中,第一个配置注释将被应用,而其他配置注释将被报告为 lint 错误。

–quiet 选项运行更高效

在 ESLint 控制台中,–quiet 选项会隐藏所有警告。在 v9.0.0 中,也不执行任何设置为 “警告” 的规则,从而提高了性能。

未使用的禁用指令默认会导致警告

一直以来,ESLint 都能标记未使用的禁用指令。在此版本中,默认启用了对未使用禁用指令的警告。你可以在配置文件中使用 linterOptions.reportUnusedDisableDirectives 或在命令行中使用 –report-unused-disable-directives-severity 来修改该值。

最后

ESLint v9.0.0 是一次重大版本升级。该版本增加了一些新功能,带来 38+ 破坏性更改、 20+ 特性更新以及相关问题修复。需要升级的同学可以参考官网提供的集成指南。

参考资料:

  1. https://eslint.org/blog/2024/04/eslint-v9.0.0-released/
  2. https://eslint.org/docs/latest/use/migrate-to-9.0.0

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/79708.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信