跳至内容

Oxlint v0.10 迁移指南

  • Don

    DonOxlint 产品所有者

Oxlint v0.10.0 已发布!此版本包含若干令人振奋的功能,其中包括对配置文件的诸多改进。

新功能

新增规则

此版本包括以下新增规则

  • promise/no-callback-in-promise
  • react/iframe-missing-sandbox
  • node/no-new-require

并且增加了对以下内容的自动修复/建议

  • eslint/no-plusplus

按类别启用/禁用规则

现在,您可以在配置文件中的categories字段启用或禁用整个类别的规则。

现在,无需运行此命令

sh
oxlint -D correctness -W suspicious -c oxlint.json

您可以在oxlint.json中添加一个categories字段

jsonc
{
  "categories": {          
    "correctness": "deny", 
    "suspicious": "warn",  
  },                       
  "rules": {
    "no-const-assign": "error",
    "import/no-cycle": "error",
  },
}

并删除-D-W标志。

plugins现已在配置文件中获得支持

配置文件现在支持 ESLint v8 配置中的plugins数组。这让您无需 CLI 参数即可启用插件,从而可以在 VSCode 中使用插件。

jsonc
{
  "plugins": ["import"], 
  "categories": {
    "correctness": "deny",
    "suspicious": "warn",
  },
  "rules": {
    "react/jsx-uses-react": "off",
    "react/react-in-jsx-scope": "off",
  },
}

这与categories配合得很好,因为启用的/已禁用的类别也会影响插件。

jsonc
{
  "plugins": ["import"],
  // `categories` affects all enabled plugins
  "categories": {
    "correctness": "allow",
    "suspicious": "warn",
  },
  "rules": {
    "no-const-assign": "error",
    "import/no-cycle": "error",
  },
}

重大更改与迁移指南

CLI 与配置文件规则优先级

过去,配置文件会覆盖在 CLI 参数中设置的规则。例如,运行此命令

sh
oxlint -A correctness -c oxlintrc.json

使用此配置文件

jsonc
{
  "rules": {
    "no-const-assign": "error",
  },
}

将导致一个规则 no-const-assign 以错误级别打开,而所有其他规则禁用(即设置为“允许”)。

现在,CLI 参数将覆盖配置文件。带有相同配置文件的同一个命令,将导致所有规则禁用。要获得与之前相同的效果,请在配置文件中启用和禁用类别,而不是使用 CLI 参数。

sh
oxlint -c oxlint.json
jsonc
{
  "categories": {           
    "correctness": "allow", 
  },                        
  "rules": {
    "no-const-assign": "error",
  },
}

在 MIT 许可下发布。