@codacy/tools-slint-9 (英语)
目录
概览
使用 JavaScript/ TypeScript 接口 ESLint 9 (英语) 带有平面配置格式。 使用库执行策略——直接调用ESLint API,而不是产入子进程.
| 财产 | 数值 |
|---|---|
| 工具标识 | ESLint9 |
| 编码 UUID | 2a30ab97-477f-4769-8b88-af596ce7a94c |
| 战略 | 图书馆 |
| 语文 | Java脚本, 类型脚本 |
| 依赖性 | eslint npm 包 (v9. x) + 68 个插件包 |
| 模式 | 3259 (292个核心+2967个插件) |
| 文件图案 | **/*.js, (中文(简体) ), **/*.jsx, (中文(简体) ), **/*.ts, (中文(简体) ), **/*.tsx |
更新图案
# Re-fetch pattern metadata from the Codacy API
pnpm prefetch
# Commit the result
git add src/patterns.json
模式ID使用codacy-eslint9编码: _ → __, (中文(简体) ), / → _实例:
ESLint9_no-unused-vars(核心规则)ESLint9_@typescript-eslint_no-unused-vars(扫描插件)ESLint9_react_jsx-no-target-blank(非范围插件)
更新 ESLint 版本
- 更新
eslint和相关软件包devDependencies联 合 国package.json,以及preferredVersion内src/metadata.ts - 运行
pnpm install - 运行
pnpm generate-payloads eslint-9从重播根到重播payload/package.json并重生其锁文件 - 运行
pnpm prefetch以检查新的/撤消的规则 - 运行
pnpm test以验证兼容性 - 如果主要版本更改,请创建新的适配软件包(
eslint-10/(中文(简体) )
发展
pnpm build # Build with tsup
pnpm test # Run tests
维护者的注释
-
预设绘图
src/pattern-mappings.json(中文(简体) ):只有前缀. 声纳JS的四项反应规则 财务报告和审定财务报表@stylisticJSX的规矩是ESLint9_sonarjs_编号 :ESLint9_@stylistic_旁边 这些插件的框架不可知规则,所以react明确键名 (单位:千美元)ESLint9_@stylistic_jsx-加上四个声纳JS的ID。 装饰标记他们reactjs不过 标记上的指向在这里是错误的:同样的标记坐落在不是反应规则的规则上,和 因为filterAutoPatterns匹配密钥的 ORs , 标记也会拖动规则前缀中由 其他密钥全数( e)i18next/no-literal-string, (中文(简体) ),perfectionist/sort-jsx-props- 那个 后一复制@stylistic/jsx-sort-props) (中文(简体) ). 在普通的React登录表上测量, 从项目规则中得出了15个结论,没有理由允许。 一样 vue SFC 自定义块规则的推理jsonc编号 :yml。 。 。 .有一个 没有
webdriverio键虽然plugin-registry.ts仍在装入eslint-plugin-wdio和ESLint 8的地图 仍然在大门上ESLint8_wdio_科达西放弃了 来自ESLint 9的目录的 wdio ruleset,所以ESLint9_wdio_匹配任何上游和密钥 已经无法选择的图案.mapping-drift.test.ts只会抓住这个 一次pnpm prefetch刷新点patterns.json- 承诺的镜子仍然列出三个 规则。 不先检查工具的活模式列表, 不要重新添加密钥 . -
ESLint 9号机使用了 平面配置 仅限格式。 适配器在从Codacy模式构建时生成平面配置阵列.
-
模式ID使用与codacy-eslint9包装器相同的编码:
_→__接下来/→_(encode),为解码的倒转. 这意味着_在规则名称中作为__。 。 。 . -
这个
blacklist.ts文件包含30+规则已知可崩溃ESLint或产生严重假阳性,来源于codacy-eslint9包装. 这个isBlacklisted()函数还检查 regex 模式(例如:.unused-imports/*-ts) (中文(简体) ). -
这个
plugin-registry.ts处理所有68个 ESLint 插件包的懒惰装入。 插件只有在来自该插件的规则处于活动模式选择时才会被加载 . -
这个
config-builder.ts从 Codacy 模式生成平面配置对象,通过插件组合规则并设置适当的解析器. 类型脚本文件获得@typescript-eslint/parser; Vue/Svelte/JSONC/YML文件获得适当的文件 globs. -
当未提供配置或图案时,适配器会回到
@eslint/js建议配置. -
checkAvailability导入 ESLint 类别并返回ESLint.version。 。 。 . -
工具为 npm 有效载数,而不是依赖性:在运行时解决(Codacy管理安装)
~/.codacy/tools/<id>/页:1CODACY_TOOL_ROOT_<ID>root, 或此软件包本身node_modules(在单体)和install运行npm ci对所犯payload/package-lock.json。见src/payload.ts。 。 。 . -
尚未为 ESLint 9 更新插件的对等依赖性警告, 并匹配 codacy- eslint9 包装行为 .