ESLint v8.x 已于 2024-10-05 停止维护。请升级到 v9.x 或考虑长期支持选项

ESLint v9.15.0 发布

我们刚刚发布了 ESLint v9.15.0,这是一个次要版本升级。此版本添加了一些新功能并修复了先前版本中发现的几个错误。

此版本将 @eslint/plugin-kit 依赖项更新到最新版本 0.2.3,其中包含针对安全公告 GHSA-7q7g-4xm8-89cq 的修复。

亮点

meta.defaultOptions

规则现在可以指定默认选项。ESLint 将递归地将任何用户提供的选项元素合并到默认元素之上。

此功能使在规则中使用选项变得更容易。

// my-rule.js
export default {
meta: {
defaultOptions: [{
alias: "basic",
ignoreClassFields: false
}],
schema: [{
type: "object",
properties: {
alias: {
type: "string"
},
ignoreClassFields: {
type: "boolean"
}
},
additionalProperties: false
}]
},
create(context) {

// `context.options` is guaranteed to be an array with a single object
// that has a string property `alias` and a boolean property `ignoreClassFields`.
// If the rule is enabled with no options specified in the configuration file,
// `alias` will be `"basic"`, and `ignoreClassFields` will be `false`.
const [{ alias, ignoreClassFields }] = context.options;

return { /* ... */ };
}
};

此功能还允许文档生成器、其他工具和集成以及最终用户轻松找到规则的默认选项。

其他值得注意的更改

  • 自定义语言现在可以提供 normalizeLanguageOptions(languageOptions) 方法。返回值将在调用 parse()createSourceCode()applyLanguageOptions() 方法时用作 languageOptions,并在规则中的 context.languageOptions 属性中用作值。
  • no-useless-computed-key 规则现在完全支持对象解构模式。

功能

错误修复

文档

杂项

  • 2967d91 chore: 将 @eslint/js 升级到 9.15.0 (#19133) (Milos Djermanovic)
  • b441bee chore: @eslint/js 发布后的 package.json 更新 (Jenkins)
  • 7d6bf4a chore: 将 @eslint/core 升级到 0.9.0 (#19131) (Milos Djermanovic)
  • 902e707 chore: 将 @eslint/plugin-kit 升级到 0.2.3 (#19130) (Milos Djermanovic)
  • 5ff6c1d chore: 升级 cross-spawn (#19125) (Ian Bobinac)
  • cceccc7 chore: 将 @eslint/json 的依赖项更新到 ^0.6.0 (#19117) (renovate[bot])
  • 0da3f73 chore: 更新 Algolia 推荐 (#19114) (Strek)
  • 4f08332 ci: 取消固定 trunk-io/trunk-action (#19108) (Francesco Trotta)
  • 6b75683 perf: 通过使用 trimEnd 替换正则表达式来优化 text-table (#19061) (Nitin Kumar)

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

ESLint v9.16.0 released
阅读 2 分钟

ESLint v9.16.0 发布

我们刚刚发布了 ESLint v9.16.0,这是一个次要版本升级。此版本添加了一些新功能并修复了先前版本中发现的几个错误。

ESLint v9.14.0 released
阅读 2 分钟

ESLint v9.14.0 发布

我们刚刚发布了 ESLint v9.14.0,这是一个次要版本升级。此版本添加了一些新功能并修复了先前版本中发现的几个错误。

ESLint v9.13.0 released
阅读 1 分钟

ESLint v9.13.0 发布

我们刚刚发布了 ESLint v9.13.0,这是一个次要版本升级。此版本添加了一些新功能并修复了先前版本中发现的几个错误。