@codacy/tools-光谱-1
目录
概览
使用 OpenAPI 和 AsyncAPI 接口 光谱使用图书馆执行战略——称为 @stoplight/spectral-core API直接而不是产入子进程.
| 财产 | 数值 |
|---|---|
| 工具标识 | spectral |
| 编码 UUID | fb60ff64-3d91-11ec-9bbc-0242ac130002 |
| 战略 | 图书馆 |
| 语文 | 贾森, 耶门 |
| 依赖性 | @stoplight/spectral-core (v1.x) (中文(简体) ) |
| 文件图案 | **/*.yaml, (中文(简体) ), **/*.yml, (中文(简体) ), **/*.json |
更新图案
# Re-fetch pattern metadata from the Codacy API
pnpm prefetch
# Commit the result
git add src/patterns.json
模式 ID 遵循格式 spectral_operation-operationId, (中文(简体) ), spectral_info-contact等 (中文(简体) ).
更新光谱版本
- 更新
@stoplight/spectral-core和相关软件包devDependencies联 合 国package.json,以及preferredVersion内src/metadata.ts(音轨)@stoplight/spectral-core(中文(简体) ) - 运行
pnpm install - 运行
pnpm generate-payloads spectral-1从重播根到重播payload/package.json并重生其锁文件 - 运行
pnpm prefetch以检查新的/撤消的规则 - 运行
pnpm test以验证兼容性 - 如果主要版本更改,请创建新的适配软件包(
spectral-2/(中文(简体) )
发展
pnpm build # Build with tsup
pnpm test # Run tests
维护者的注释
- 光谱诊断 基于 0 行和列编号。 适配器在两者中都增加了1个来制作基于1的Codacy Issues.
- 适配器一次处理一个文件,每个文件创建一个新的Spectral实例. 这样可以避免文件之间的状态渗出.
- 并非所有的YAML/JSON文件都是API specs. 非 spec 文件可能会从 Spectral 中产生解析错误——适配器将这些错误捕获为警告并持续.
- 适配器通过检查顶级来检测 AsyncAPI 规格
asyncapi文件内容中的密钥,并使用asyncapi规则从@stoplight/spectral-rulesets。所有其他文件使用 OAS (OpenAPI) 规则. checkAvailability动态进口@stoplight/spectral-core并创造了一个实例.- 工具为 npm 有效载数,而不是依赖性:在运行时解决(Codacy管理安装)
~/.codacy/tools/<id>/页:1CODACY_TOOL_ROOT_<ID>root, 或此软件包本身node_modules(在单体)和install运行npm ci对所犯payload/package-lock.json。见src/payload.ts。 。 。 .