aws-cloudformation / aws-cloudformation/cloudformation-cli-typescript-plugin
Resource model break when specifying an array with unique: true
- Langage dominant
- TypeScript
- Étoiles
- 46
- Forks
- 18
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
I've noticed when specifying an array with unique: true translates the model into a Set instead of an Array (makes sense)
but then when passing an actual array as example input, the resource provider fails. Consider for example:
```
"Tags": {
"type": "array",
"maxItems": 50,
"uniqueItems": true,
"insertionOrder": false,
"description": "An array of key-value pairs to apply to this resource.",
"items": {
"$ref": "#/definitions/Tag"
}
},
```
with input:
```
"Tags": [{
"Key": "name",
"Value": "value"
}]
```
gives error
`"message": "Error: Error: Unsupported type: object [Tag] for tags (Error)",`
Removing the `uniqueItems` fixes the issue and the main thing I notice is that in the generated code the type changes from a Set to an Array
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Reproduisez l’échec avec le schéma indiqué et l’entrée d’exemple, puis examinez le modèle TypeScript généré ainsi que le chemin de resource-provider pour les tableaux avec uniqueItems activé. Comparez le comportement lorsque uniqueItems est supprimé ; le travail est considéré comme terminé lorsque le tableau d’exemple d’objets Tag est accepté tout en continuant à représenter correctement l’unicité.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- aws, typescript
- Domaine
- backend-api-design, cloud
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100