[Schema Inaccuracy] Artifact.Id is missing `int64` format
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 1/5
- Temps estimé
- Moins d'une heure
- Accessibilité débutants
- 88/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- openapi
- Domaine
- api
Piste de recherche
Ouvrez api.github.com.json et repérez la propriété id de l’objet artifact. Ajoutez le format int64 indiqué dans l’issue, puis vérifiez que le schéma amène les clients générés à utiliser un désérialiseur 64 bits plutôt qu’un désérialiseur d’entiers.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Schema Inaccuracy
When I use Kiota to generate clients for the GitHub API, I get a deserialization error when retreiving artifacts through the API. The value for the Artifact.Id is simply too large and exceeds an Int32.
Expected
It should not result in deserialization errors.
Problem
In the api.github.com.json file, the Actor.Id is defined as:
"artifact": {
"title": "Artifact",
"description": "An artifact",
"type": "object",
"properties": {
"id": {
"type": "integer",
"example": 5
},
This makes Kiota belive that it can use an integer deserializer:
public virtual IDictionary<string, Action<IParseNode>> GetFieldDeserializers()
{
return new Dictionary<string, Action<IParseNode>>
{
{ "archive_download_url", n => { ArchiveDownloadUrl = n.GetStringValue(); } },
{ "created_at", n => { CreatedAt = n.GetDateTimeOffsetValue(); } },
{ "digest", n => { Digest = n.GetStringValue(); } },
{ "expired", n => { Expired = n.GetBoolValue(); } },
{ "expires_at", n => { ExpiresAt = n.GetDateTimeOffsetValue(); } },
---> { "id", n => { Id = n.GetIntValue(); } },
{ "name", n => { Name = n.GetStringValue(); } },
{ "node_id", n => { NodeId = n.GetStringValue(); } },
{ "size_in_bytes", n => { SizeInBytes = n.GetIntValue(); } },
{ "updated_at", n => { UpdatedAt = n.GetDateTimeOffsetValue(); } },
{ "url", n => { Url = n.GetStringValue(); } },
{ "workflow_run", n => { WorkflowRun = n.GetObjectValue<global::GitPackagesManager.ApiClient.Models.Artifact_workflow_run>(global::GitPackagesManager.ApiClient.Models.Artifact_workflow_run.CreateFromDiscriminatorValue); } },
};
}
If the Artifact.Id had been defined as
"artifact": {
"title": "Artifact",
"description": "An artifact",
"type": "object",
"properties": {
"id": {
"type": "integer",
"example": 5,
"format": "int64"
},
the 'Id' line in the generated GetFieldDeserializers() method would use n.GetLongValue() instead of n.GetIntValue()
- Langage dominant
- Aucune donnée de langage
- Étoiles
- 1.6k
- Forks
- 345
- Merge moyen
- 2 h 30 min
- PR mergées (30 j)
- 79
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de github/rest-api-description
-
feature
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
github/rest-api-description#7286 ·
Les mainteneurs répondent en général sous 1 jour
-
feature
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
github/rest-api-description#7246 ·
Les mainteneurs répondent en général sous 1 jour
-
feature
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
github/rest-api-description#7220 ·
Les mainteneurs répondent en général sous 1 jour
-
feature
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
github/rest-api-description#7201 ·
Les mainteneurs répondent en général sous 1 jour
-
feature
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
github/rest-api-description#7163 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de github/rest-api-description
Issues similaires
-
Fix the no-pin ruling in line-drawings: pin a below-the-record stage at the record's chapterOuvertedocumentation
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
cosimochellini/one-piece-zero-spoiler#551 ·
Les mainteneurs répondent en général sous 1 jour
-
getWatched() omits __proto__ directories when cwd is setPeut-être pris @maxazure l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 79/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
bilawalsidhu/gods-eye-view#1060 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
signal18/replication-manager#1981 ·
Les mainteneurs répondent en général sous 1 jour