Azure / Azure/openapi-diff

False positives when readOnly property using referenced enum

Ouverte
#286 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
C#
Étoiles
290
Forks
50
Merge moyen
5 j 13 h
PR mergées (30 j)
5

Description

**Describe the bug**

I'm working on https://github.com/Azure/azure-rest-api-specs-pr/pull/15631 and there are a lot of false positives with a message of `The read only property has changed from 'true' to 'false'.

![image](https://github.com/Azure/typespec-azure/assets/87583576/60ec9d9a-3bb8-453c-b3fc-6d5c8846e119)

**To Reproduce**
As an example from that PR:
``` typespec
@doc("Subscription trial availability")
model Trial {
@doc("Trial status")
@visibility("read")
status?: TrialStatus;
```

It does produce `readOnly`.
``` json
"status": {
"$ref": "#/definitions/TrialStatus",
"description": "Trial status",
"readOnly": true
},
```

But before it was not a `$ref`, it was inline:
```json
"status": {
"description": "Trial status",
"type": "string",
"enum": [
"TrialAvailable",
"TrialUsed",
"TrialDisabled"
],
"readOnly": true,
"x-ms-enum": {
"name": "TrialStatus",
"modelAsString": true
}
},
```

**Expected behavior**
It is not marked as a breaking change.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par examiner la comparaison décrite dans Azure/azure-rest-api-specs-pr#15631, en utilisant le modèle Trial et l’enum TrialStatus référencé comme cas de reproduction. Suivez l’endroit où le diff compare l’ancien schéma enum inline avec le nouveau schéma $ref et la valeur readOnly. La tâche est terminée lorsque cette modification équivalente n’est plus signalée comme une modification readOnly incompatible.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
csharp, openapi
Domaine
cli
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.