作者 | 李俊辰 近日,ESLint 的主要升级版本 ESLint v7.0.0 正式发布。此次更新除了修复已知 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

node 更新_ESLint v7.0.0 发布:不再支持 Node.js v8相关推荐

  1. linux系统无法网上看视频文件,重橙网络:Flash Player 发布重要更新,Win7 以下/Linux/Mac 不再支持视频格式内容播放...

    IT之家 1 月 12 日消息 根据 Adobe Flash Player 中国大陆地区独家战略合作伙伴重橙网络的消息,Flash Player 34.0.0.92 现已更新,其中包括可用性.在线安全 ...

  2. OpenKruise v0.5.0 版本发布,支持无损的流式分批发布策略

    作者 | 酒祝  阿里云技术专家 导读:OpenKruise 是阿里云开源的大规模应用自动化管理引擎,在功能上对标了 Kubernetes 原生的 Deployment/StatefulSet 等控制 ...

  3. CAT 3.0 开源发布,支持多语言客户端及多项性能提升

    项目背景 CAT(Central Application Tracking),是美团点评基于 Java 开发的一套开源的分布式实时监控系统.美团点评基础架构部希望在基础存储.高性能通信.大规模在线访问 ...

  4. Tails 3.0 正式发布,不再支持 32 位计算机

    基于 Debian 9 (Stretch) 的匿名发行版 Tails 已正式释出 3.0 版. Tails 3.0 不再支持 32 位计算机,只支持 64 位计算机.官方表示这是一个艰难的决定,但只支 ...

  5. 前端框架 Angular 11.0.0 正式发布,不再支持 IE 9 、10

    前端框架 Angular 11.0.0 正式发布. Angular 11.0.0 将 TypeScript 升级到 4.0, 对 TypeScript 3.9 不再支持. 放弃了对 IE 9 .10 ...

  6. 世界之窗6.0.0.170发布,支持自定义安装路径

    大家好, 今天发布6.0.0.170,本次版本主要支持自定义安装路径功能,欢迎大家使用. 如果大家在使用过程中遇到任何问题及有任何建议,欢迎到论坛发帖反馈. 主站下载地址:http://www.the ...

  7. JAP v1.0.5 发布,支持 Basic、Digest 和 Bearer 认证方式

    概要: JAP 发布 1.0.5 重构 JAP 文档站 增加 starter 1. JAP 发布 1.0.5 1.1 增加 jap-http-api 模块 @Mvbbb 自 1.0.5 版本开始,JA ...

  8. php xp不支持,据说PHP5.5发布 不再支持XP和2003

    PHP 5.5 正式版发布,不再支持Windows XP和2003系统 PHP 开发者正式 发布 5.5 版本,该版本从去年11月开始开发,历经多个测试版本.PHP 5.5 包含一系列的新特性,例如新 ...

  9. 微软CNTK 2.0版本发布,支持C#

    微软 CNTK 2.0 版本今天正式发布. CNTK(Cognitive Toolkit)是微软的深度学习工具包,可以帮助企业加速图像和语音识别进程.有了今天的更新,企业可以在本地或云端结合 Azur ...

最新文章

  1. Hash+哈希+哈希函数
  2. python四十五:归一化继承
  3. UILable文字不居中问题
  4. C# 多态相关的文章
  5. 项目管理工具project软件学习(一) - 项目信息设置
  6. ODBC的JAR包和PLSQL
  7. HDOJ--1262--寻找素数对
  8. 软考数据库系统工程师是什么?如何备考?
  9. API激光跟踪仪SDK基础使用
  10. 一文读懂机器学习(转)
  11. 语音信号处理基础知识-常用特征及预处理
  12. 数据结构之图的基础知识(二)
  13. html开发一个月多少钱,html5前端开发工资一般是多少
  14. 内涵图:从明天起,做一个有内涵的人
  15. audio_policy.conf文件:AUDIO_DEVICE_IN_REMOTE_SUBMIX含义
  16. 通过CSS样式缩放图片导致图片模糊的解决方案
  17. 3星|《一万年的爆发:文明如何加速人类进化》:那些拒绝承认欧洲征服和定居美洲过程中生物学差异的人,事实上也是在否认达尔文进化论...
  18. js实现字符串数组转换成数字数组
  19. 「AI芯片公司」比特大陆的路线图上,除了四款TPU还有在这三个产业落地的野心
  20. LeetCode 771. 宝石与石头(java)

热门文章

  1. Go 语言“助力”恶意软件?仅 4 年基于 Go 的恶意软件数就激增 2000%!
  2. 关于清理「死代码」,我有一些好方法推荐给你
  3. 实现自我隐藏 CPU 利用率的最佳方法,不妨一试!
  4. 想招到优秀的程序员?这些坑一定不要踩
  5. 用 Python 实现手机自动答题,下一个百万获奖人可能就是你!
  6. 珍稀干货!阿里 Web 音视频开发趟坑指南
  7. 【有内鬼,终止交易】风靡朋友圈的壁纸,实现代码竟如此简单 | 原力计划
  8. 【早报】这届程序员要做好会Python的准备了!
  9. 最好的 Windows C++ 编译器!
  10. 华为此时就把 5G 芯片用在手机上,垒起了多高的竞争壁垒?