TypeError when model default value is a list
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 65/100
Piste de recherche
Commencez dans openapi_python_client/parser/properties/init.py vers la ligne 463 et reproduisez l’échec avec openapi-python-client generate --url https://sand-docs.ilevelsolutions.eu/openapi.yaml. Suivez la manière dont les valeurs par défaut d’enum sous forme de liste sont représentées et vérifiez les tests pertinents du parser. C’est terminé lorsque la spécification est générée correctement sans le TypeError et que le comportement existant reste intact.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
When generating models for an API where a default argument is a list of enums, a TypeError is raised on this line:
return f"{prop.class_info.name}.{inverse_values[default]}"
A possible fix could be to explicitly check for this case. Below is a proposed fix, but I'm not familiar enough with the codebase to know whether this is a correct fix. However, I was able to parse the API docs correctly with this fix in place:
if type(default) is list:
return [f"prop.class_info.name.inverse_values[d]" for d in default]
else:
return f"{prop.class_info.name}.{inverse_values[default]}"
To Reproduce
Steps to reproduce the behavior:
- Run
openapi-python-client generate --url https://sand-docs.ilevelsolutions.eu/openapi.yaml - See error
Expected behavior
The API docs should be able to be parsed
OpenAPI Spec File
https://sand-docs.ilevelsolutions.eu/openapi.yaml
Desktop (please complete the following information):
- OS: macOS 13.1
- Python Version: 3.10
- openapi-python-client version: 0.13.1
- Langage dominant
- Python
- Étoiles
- 2k
- Forks
- 293
- Merge moyen
- 34 min
- PR mergées (30 j)
- 1
Guide de contribution
Ouvrir 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 openapi-generators/openapi-python-client
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
openapi-generators/openapi-python-client#1451 · 1 commentaire ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 52/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 64/100
openapi-generators/openapi-python-client#1435 · 1 commentaire ·
Toutes les issues de openapi-generators/openapi-python-client
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
anthropics/skills#1811 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
speaches-ai/speaches#678 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
datalayer/mcp-compose#42 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
conda-forge/spacy-feedstock#177 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
UKGovernmentBEIS/inspect_evals#2523 ·