github / rest-api-description

An OpenAPI description for GitHub's REST API
MIT License
1.38k stars 224 forks source link

[Schema Inaccuracy] Pull Request Files Changed `blob_url`, `raw_url`, and `sha` should be nullable #1945

Open bigfootjon opened 1 year ago

bigfootjon commented 1 year ago

Schema Inaccuracy

When a PR changes a submodule, the blob_url and raw_url are null, in some other cases that I can't pin down the sha field is null. However, the current schema marks these fields as non-nullable.

Expected

blob_url, raw_url, and sha in PR files changed responses should be marked as nullable.

Reproduction Steps

$ curl https://api.github.com/repos/pytorch/pytorch/pulls/89846/files

The above PR changes a submodule, the fields can be seen to be nullable there.

0xpablo commented 7 months ago

We are experiencing the same issue. This is a big problem on strongly typed languages like Swift where decoding will fail at runtime. We patched the spec manually but it would be great to get this fixed.