Crash if inherited property is structurally equal but not reference identical
@mikeharder 已经在做这个了。
开始于 2026年5月6日。
评估
这个 Issue 还没有评估数据。
描述
If a definition defines a property, and inherits from another definition that also defines the property:
- If the properties are reference identical, it's allowed
- If the properties are equivalent (but not reference identical), the tool crashes
Organic PRs hitting problem
Test Cases
Pass - Reference Identical
{
"swagger": "2.0",
"info": {
"title": "structural-equality",
"version": "1.0"
},
"paths": {},
"definitions": {
"Foo": {
"type": "object",
"properties": {
"bar": {
"$ref": "#/definitions/MyObject"
}
},
"allOf": [
{
"$ref": "#/definitions/Foo2"
}
]
},
"Foo2": {
"type": "object",
"properties": {
"bar": {
"$ref": "#/definitions/MyObject"
}
}
},
"MyObject": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
Fail - Structurally Equal
{
"swagger": "2.0",
"info": {
"title": "structural-equality",
"version": "1.0"
},
"paths": {},
"definitions": {
"Foo": {
"type": "object",
"properties": {
"bar": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"allOf": [
{
"$ref": "#/definitions/Foo2"
}
]
},
"Foo2": {
"type": "object",
"properties": {
"bar": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
}
}
Error
incompatible properties : bar
definitions/Foo/properties/bar
at file:///home/mharder/openapi-diff-mh/incompat-prop/src/test/specs/incompatible-properties/structural-equality-fail.json#L12:8
definitions/Foo2/properties/bar
at file:///home/mharder/openapi-diff-mh/incompat-prop/src/test/specs/incompatible-properties/structural-equality-fail.json#L28:8
- 主要语言
- C#
- 星标
- 290
- 派生
- 50
- 平均合并
- 2 天 21 小时
- 30 天内合并 PR
- 10
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Azure/openapi-diff 的其他 Issue
-
Azure/openapi-diff#479 · 2 条评论 · 已指派 1 人 ·
-
Azure/openapi-diff#456 · 已指派 1 人 ·
-
难度 4/5 3-5 天 新手友好度 35/100
Azure/openapi-diff#445 ·
-
Azure/openapi-diff#371 · 7 条评论 · 已指派 1 人 ·
-
难度 4/5 3-5 天 新手友好度 25/100
Azure/openapi-diff#364 · 4 条评论 ·
查看 Azure/openapi-diff 的全部 Issue
相似的 Issue
-
:watch: Not Triaged dotnet-fsharp/svc
难度 1/5 1 小时以内 新手友好度 90/100
-
Client customer-reported needs-team-attention question Service Attention WebPubSub
难度 2/5 1-3 小时 新手友好度 76/100
Azure/azure-sdk-for-net#63292 · 3 条评论 · 1 个 reaction ·
-
Issue-Enhancement Needs-Triage
难度 1/5 1 小时以内 新手友好度 86/100
PowerShell/PowerShell#28061 · 2 个 reaction ·
-
dependencies needs-team-triage server-Azure.Mcp
难度 2/5 1-3 小时 新手友好度 72/100
-
aspnet-core/svc aspnetcore-signalr/subsvc doc-enhancement Pri2 SignalR
难度 1/5 1 小时以内 新手友好度 88/100
dotnet/AspNetCore.Docs#37729 ·