ESLint v8.0.0 发布

我们刚刚发布了 ESLint v8.0.0,这是 ESLint 的一个重大版本升级。此版本增加了一些新功能,并修复了先前版本中发现的几个错误。此版本也有一些重大更改,因此请仔细阅读以下内容。

亮点

🌐 Highlights

v8.0.0 中有若干重大变更。我们创建了一个迁移指南来解释这些重大变更并描述如何升级。此外,还有若干新功能:

🌐 There are several breaking changes in v8.0.0. We’ve created a migration guide to explain the breaking changes and describe how to upgrade. In addition, there are several new features:

  • ESLint 的默认解析器和所有核心规则现在完全支持以下 ES2022 语法:
    • 类的公共实例字段和私有实例字段
    • 类的公共静态字段和私有静态字段
    • 类的私有实例方法和访问器
    • 类的私有静态方法和访问器
    • 正则表达式匹配索引
    • 顶层 await
  • --fix--report-unused-disable-directives 一起使用时,Autofix 现在可以移除未使用的禁用指令。
  • 在 ES3 中,保留字作为标识符的使用现在已被禁止。此更改仅影响在解析器选项中配置了默认解析器 { "ecmaVersion": 3 } 的用户。
  • [class-methods-use-this](/docs/8.0.0/rules/class-methods-use-this) 规则有一个新的 enforceForClassFields 选项。
  • [max-classes-per-file](/docs/8.0.0/rules/max-classes-per-file) 规则有一个新的 ignoreExpressions 选项。
  • meta.docs.category 属性已从所有核心规则中移除。

重大更改

🌐 Breaking Changes

  • 7cf96cf 重大更新:在 ES3 中禁止使用保留字(修复 #15017) (#15046) (Milos Djermanovic)
  • 305e14a 最新消息:在核心规则中移除 meta.docs.category(修复 #13398)(#14594)(薛定谔的猫)
  • 24c9f2a 突发新闻:严格的包导出(参考 #13654)(#14706)(Nicholas C. Zakas)
  • 86d31a4 最新消息:在 RuleTester 中禁止使用 SourceCode#getComments()(参考 #14744)(#14769)(Milos Djermanovic)
  • 1d2213d 最新消息:可修复的禁用指令(修复 #11815)(#14617)(Josh Goldberg)
  • 4a7aab7 最新消息:可修复规则需要 meta(修复 #13349) (#14634) (Milos Djermanovic)
  • d6a761f 最新消息:规则建议需要 meta.hasSuggestions (#14573) (Bryan Mishkin)
  • 6bd747b 最新消息:支持新的正则表达式 d 标志(修复 #14640) (#14653)(太田洋介)
  • 8b4f3ab 快讯:修复 comma-dangle 方案(修复 #13739) (#14030) (Joakim Nilsson)
  • b953a4e 重大更新:升级 espree 并支持新的类特性 (参考 #14343) (#14591) (Toru Nagashima)
  • 8cce06c 重大更新:向 eslint:recommended 添加一些规则(参考 #14673)(#14691)(薛定谔的猫)
  • 86bb63b 最新消息:删除 codeframetable 格式化器 (#14316) (Federico Brigante)
  • f3cb320 重大更新:放弃支持 node v10/v13/v15(修复 #14023)(#14592) (薛定谔的猫)

增强功能

🌐 Enhancements

错误修复

🌐 Bug Fixes

文档

🌐 Documentation

依赖升级

🌐 Dependency Upgrades

  • 7d3f7f0 升级:解冻 @eslint/eslintrc(修复 #15036)(#15146)(Brandon Mills)
  • 9e5c2e8 升级:@eslint/eslintrc@1.0.1 (#15047) (Milos Djermanovic)
  • ec9db63 升级:@eslint/eslintrc@1.0.0 (#14865) (Milos Djermanovic)
  • 62c6fe7 升级:调试 4.0.1 > 4.3.2 (#14892) (sandesh bafna)
  • 88db3f5 升级:js-yaml 到 v4 (#14890) (Bryan Mishkin)
  • ae6072b 升级:eslint-visitor-keys 到 v3 (#14902) (Bryan Mishkin)
  • e53d8cf 升级:markdownlint 开发依赖 (#14883) (Bryan Mishkin)
  • d66e941 升级: @humanwhocodes/config-array 到 0.6 (#14891) (Bryan Mishkin)

构建相关

🌐 Build Related

  • 71faa38 构建:8.0.0-rc.0 的更新日志更新(ESLint Jenkins)
  • d148ffd 构建:8.0.0-beta.2 的更新日志更新(ESLint Jenkins)
  • 95cc61e 构建:8.0.0-beta.1 的更新日志更新(ESLint Jenkins)
  • c74fe08 构建:在 CI 中为 Node 16 强制预发布同级依赖 (#14933) (Brandon Mills)
  • 027165c 构建:8.0.0-beta.0 的更新日志更新(ESLint Jenkins)
  • b8b2d55 构建:添加 codeql (#14729) (薛定谔的猫)

杂项

🌐 Chores

  • fabdf8a 任务:从 Makefile.js 中移除 target.all (#15088) (Hirotaka Tagawa / wafuwafu13)
  • 05d7140 任务:在 Makefile.js 中记录目标全局 (#15084) (Hirotaka Tagawa / wafuwafu13)
  • 47be800 任务:用 { a = 1 } 模式测试 Property > .key (修复 #14799) (#15072) (Milos Djermanovic)
  • 9fb0f70 工作项:修复错误报告模板 (#15061) (Milos Djermanovic)
  • f87e199 工作任务:清理问题模板 (#15039) (Nicholas C. Zakas)
  • 921ba1e 杂务:修复失败的 CLI 测试 (#15041) (Milos Djermanovic)
  • 143a598 工作: 切换问题以使用表单 (#15024) (Nicholas C. Zakas)
  • b4232d4 工作:添加测试以显示已废弃规则的废弃通知 (#14989) (TagawaHirotaka)
  • db15183 工作: 重构测试的注释 (#14956) (TagawaHirotaka)
  • a79c9f3 任务:强制 jsdoc check-line-alignment 从不 (#14955) (Brett Zamir)
  • 2d18db6 杂项:为在 Linter 中合并 parserOptions 添加测试 (#14948) (Milos Djermanovic)
  • 9a4ae3b 任务:应用注释 require-description 并检查类声明 (#14949) (Brett Zamir)
  • 8344675 任务:修复小错字 (#14951) (铃木宗介)
  • 58840ac 任务:更新 jsdoc 插件并调整生效规则 (#14814) (Brett Zamir)
  • be334f9 任务:修复 Makefile 对 linter.getRules() 的调用 (#14932) (Brandon Mills)
  • 0c86b68 工作: 替换 Array flat/flatMap 的旧语法 (#14614) (Stephen Wade)
  • 6a89f3f 任务:忽略 yarn-error.log.pnpm-debug.log (#14925) (Nitin Kumar)
  • 3b6cd89 事务: 在 no-restricted-{imports/modules} 规则中添加相对/绝对路径测试 (#14910) (Bryan Mishkin)
  • f984515 事务: 在 semi 中添加关于报告位置的断言 (#14899) (Nitin Kumar)
  • 149230c 任务:为 Verify Files CI 作业指定 Node 14.x (#14896) (Milos Djermanovic)
  • 537cf6a 事务: 更新 glob-parent (修复 #14879)(#14887) (Nitin Kumar)
  • f7b4a3f 任务:将开发依赖更新到最新 (#14624) (薛定谔的猫)

最新的 ESLint 新闻、案例研究、教程和资源。

ESLint v10.3.0 发布
1 min read

ESLint v10.3.0 发布

我们刚刚发布了 ESLint v10.3.0,这是 ESLint 的一次小版本升级。此版本添加了一些新功能,并修复了上一版本中发现的几个错误。

ESLint v10.2.1 发布
1 min read

ESLint v10.2.1 发布

我们刚刚发布了 ESLint v10.2.1,这是 ESLint 的一个补丁版本升级。本次发布修复了上一版本中发现的几个错误。

ESLint v10.2.0 发布
2 min read

ESLint v10.2.0 发布

我们刚刚发布了 ESLint v10.2.0,这是 ESLint 的一次小版本升级。此版本添加了一些新功能,并修复了上一版本中发现的几个错误。