ESLint v7.0.0 发布:不再支持 Node.js v8

2020 年 5 月 13 日

ESLint v7.0.0 发布:不再支持 Node.js v8

近日,ESLint v7.0.0 作为 ESLint 的主要升级版本正式发布。此次更新除了修复已知bug 和增强特性外,还增加了一些新特性以及 bugfix。官方更新文档中提及,由于Node.js 8 已于2019年12月达到EOL,ESLint v7.0.0 将放弃对 Node.js v8 的支持。


ESLint 是一个用来识别 ECMAScript/JavaScript 代码并且按照规则给出报告的代码检测工具。代码检测是一种静态的分析,用于寻找代码中的错误,而且并不依赖于某样具体的编码风格,很多编程语言的代码检测工具都集成在编译程序中,但 JavaScript 由于易出错且没有编译程序,所以 ESLint 是一个不可或缺的工具。


近日,ESLint 官网正式发布了 ESLint v7.0.0,在版本更新的声明中,ESLint 重点强调了 ESLint v7.0.0 不再支持 Node.js v8 这件事,此外还表示此版本中进行了一些重大更改,并附上了一份迁移指南:


https://eslint.org/docs/user-guide/migrating-to-7.0.0


此次 ESLint v7.0.0 的重大更新包括:


核心规则变更


  • 弃用了核心中的Node.js / CommonJS 十条规则,并移至eslint-plugin-node插件。

  • 更新一些规则,用来识别 bigint 文本,同时在默认情况下对更多情况发出警告。

  • eslint:recommended 更新了一些新的规则:no-dupe-else-if,no-import-assign,和no-setter-return。


优化开发者体验


  • 默认的忽略模式(IgnorePatterns)已经更新。在默认情况下,ESLint 将不再忽略 .eslintrc.js 和 bower_components/*。此外,现在的默认情况下,它将忽略嵌套的 node_modules 目录。

  • 如果在overrides [].files中显式定义了扩展名不是.js的文件,ESLint现在将对它们进行整理,不再需使用–ext进行标记。

  • ESLint 将支持指令注释中的描述,因此可以清楚地记录禁用注释等内容。

  • 将附加验证添加到 RuleTester 类中,以改善对插件中自定义规则的测试。

  • ESLint 现在将解析与条目配置文件相关的插件,意味着位于项目外部的共享配置文件现在可以与所需的插件并置在一起。

  • 从 ESLint v7 开始,分别使用 --config path/to/a-config 和 --ignore-path path/to/a-ignore CLI 标志传递给ESLint的配置文件和忽略文件,同时也将从当前工作目录中解析, 而不是文件位置。带来的好处就是开发者可以使用共享插件,不必再在其项目中安装了。


新的 ESLint 类


在此次更新中,CLIEngine 类提供了一个同步的 API,该 API 阻碍了一些功能的实现,比如并行 lint、在可共享的 configs/parsers/plugins/formatter 中支持 ES 模块以及增加了可视化显示 lint 运行进度的功能。新的 ESLint 类提供了一个异步 API。目前来说,CLIEngine 将继续保持核心地位,但将来的版本中可能会被移除。


新特性


  • f9774ec New: 新增 default-case-last 规则(修复#12665)(#12668)(Milos Djermanovic)

  • a1d999c New: 新增 no-useless-backreference 规则(修复#12673)(#12690)(Milos Djermanovic)

  • 985dac3 New: 新增 no-restricted-exports 规则(修复#10428)(#12546)(Milos Djermanovic)


延伸阅读:


https://eslint.org/blog/2020/05/eslint-v7.0.0-released


2020 年 5 月 13 日 16:471012

评论

发布
暂无评论
发现更多内容

Clickhouse在大数据分析平台-留存分析上的应用

小小的一朵云

大数据

架构师训练营 - 大作业

张明森

面试常考算法题之 Top K 问题

码农田小齐

数据结构 算法

USDT跑分承兑系统开发,区块链支付平台搭建

13823153121

架构师训练营-第1周课后作业(1期)

阿甘

彻底理解JavaScript执行上下文

Walker

Java 前端 this指针 函数执行

金融企业敏捷转型大咖风采 | 中国出口信用保险公司的 DevOps 落地之道

Atlassian速递

项目管理 DevOps 敏捷 行业资讯 Atlassian

百度大脑6.0重磅升级 不断进阶中的中国AI底座实力尽显

脑极体

在Ubuntu 20.04 搭建 Django 开发环境 以及 快速构建一个简单的 Blog

Matrix Chan

Python django 后端开发 Ubuntu20.04

用Go-Guardian写一个Golang的可扩展的身份认证

朱亚光

go golang 微服务 身份认证

滴滴基于 Flink 的实时数仓建设实践

Apache Flink

flink

服务质量分析:腾讯会议&腾讯云Elasticsearch玩出了怎样的新操作?【>>戳文章免费体验Elasticsearch服务30天】

小小的一朵云

大数据

Java面试史上最全的JAVA专业术语面试100问 (前1-50)

Java架构师迁哥

Week 13 学习总结

Jeremy

架构师训练营第 0 期 期末大作业

无名氏

@所有人 Flink Forward Asia 2020 向您发出议题征集邀请!

Apache Flink

flink

LeetCode题解:206. 反转链表,双指针,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

Netty之旅三:Netty服务端启动源码分析,一梭子带走!

一枝花算不算浪漫

Netty

甲方日常 15

句子

工作 随笔杂谈 日常

牛批!清华毕业的Java大牛用一个坦克大战游戏项目来演示设计模式

Java成神之路

Java 学习 编程 程序员 设计模式

应对高并发系统有没有通用的解决方案呢?

架构师修行之路

架构 高并发 异步

我写了一个TypeScript虚拟机。

渔子长

Java typescript 前端 deno Node

读书笔记之《普罗普:故事形态学》

AI代笔

两年Java开发经验赶上金九招聘季涨到23K,这究竟是怎么做到的?

Java架构师迁哥

Apache Pulsar 在腾讯 Angel PowerFL 联邦学习平台上的实践

Apache Pulsar

Apache 学习 开源 Apache Pulsar

繁星计划将成为引领全球币值管理的带动计划!

InfoQ_967a83c6d0d7

Week 13 命题作业

Jeremy

oeasy 教您玩转 linux 010215 随机谚语 fortune

o

介绍

剑心

学习

架构师训练营-第1周学习总结(1期)

阿甘

UML

哈哈,成为作者了

大海

ESLint v7.0.0 发布:不再支持 Node.js v8-InfoQ