`fromJsonSchemaDocument`: import the `not` keyword
维护者通常 1 天内回复
评估
这个 Issue 还没有评估数据。
描述
What is the problem this feature would solve?
On 4.0.7, importing a schema that uses not fails:
SchemaRepresentation.fromJsonSchemaDocument(JsonSchema.fromSchemaDraft07({
type: "object",
properties: { a: { type: "string" } },
not: { required: ["b"] }
}))
// Cannot import JSON Schema keyword "not": Effect has no equivalent constraint.
github-workflow.json uses not 9 times and dependabot-2.0.json once, mostly to forbid combinations such as branches together with branches-ignore.
Context: validating .github/dependabot.yaml and GitHub workflow files with SchemaRepresentation.fromJsonSchemaDocument against the SchemaStore documents dependabot-2.0.json and github-workflow.json, to replace ajv. Since #7410 the importer rejects keywords it cannot represent, which is the right failure, but it means both real-world documents cannot be imported at all. This is one of five gaps found in those two documents; each is filed separately.
What is the feature you are proposing to solve the problem?
Import not as a check that fails when the value decodes against the negated schema. Exporting it back to JSON Schema as not would keep round-trips lossless.
What alternatives have you considered?
- Stripping
notwithonEnter: imports, but silently accepts the invalid combinations the keyword exists to reject, which is what #7410 set out to prevent. - Keeping
ajvfor these documents: what we do today.
- 主要语言
- TypeScript
- 星标
- 16.7k
- 派生
- 808
- 平均合并
- 10 小时 15 分钟
- 30 天内合并 PR
- 845
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Effect-TS/effect 的其他 Issue
-
Let OTLP log and trace exporters leave no timer pending while idle可能已有人在做 @effect-bot 今天认领。 未关闭
Effect-TS/effect#10234 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Otlp.layerFromConfig exports nothing when only OTEL_EXPORTER_OTLP_ENDPOINT is set可能已有人在做 @effect-bot 今天认领。 未关闭
Effect-TS/effect#10231 · 已指派 1 人 ·
维护者通常 1 天内回复
-
sql: give BEGIN, COMMIT, ROLLBACK and savepoint statements their own spans under sql.transaction可能已有人在做 @effect-bot 于 1 天前认领。 未关闭
Effect-TS/effect#10203 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
OpenApi.fromApi (4.1.0) emits duplicate component schemas with a _1 suffix when the encoded side differs可能重新可做 关联的 PR 已关闭且未合并。 未关闭
难度 3/5 1-2 天 新手友好度 35/100
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 35/100
维护者通常 1 天内回复
相似的 Issue
-
bug low priority
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
enhancement good first issue
难度 2/5 1-3 小时 新手友好度 66/100
laaielichter/Godotwright#81 ·
维护者通常 1 天内回复
-
gebied: infra
难度 2/5 1-3 小时 新手友好度 72/100
VincentSmedinga/sc-heerenveen-fansite#538 ·
维护者通常 1 天内回复
-
CI grants a token it does not need, never cancels superseded runs, and cannot fail on lint warnings未关闭good first issue help wanted type:infrastructure type:security
难度 2/5 1-3 小时 新手友好度 70/100
Open-Glassbeetle/glassbeetle#247 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 72/100
维护者通常 1 天内回复