Need of recursive properties check in validation
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 45/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- python
- Domaine
- api, backend-api-design
Piste de recherche
Start in validation/keywords.py at SchemaValidator and trace how nested schemas, allOf, and properties are currently validated. Done means recursive properties in nested schemas are detected, including schemas nested through allOf, with validation behavior covering the reported API case.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Some APIs contain nested schemas, and the current version of 0.7.1 openapi-spec-validator is unable catch the recursive properties. Below is an example of what can be achieved with a little tweak in the class SchemaValidator validation/keywords.py.
nested_properties = []
if "allOf" in schema:
all_of = schema / "allOf"
while True:
for inner_schema in all_of:
yield from self(
inner_schema,
require_properties=False,
)
if "properties" not in inner_schema:
continue
inner_schema_props = inner_schema / "properties"
inner_schema_props_keys = inner_schema_props.keys()
nested_properties += list(inner_schema_props_keys)
if "allOf" not in inner_schema:
break
all_of = inner_schema / "allOf"
- Langage dominant
- Python
- Étoiles
- 409
- Forks
- 73
- Métriques de merge des PR
- Aucune PR mergée en 30 j
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 python-openapi/openapi-spec-validator
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 30/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
python-openapi/openapi-spec-validator#400 · 1 commentaire ·
-
kind/bug/confirmed
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
python-openapi/openapi-spec-validator#373 · 1 commentaire ·
Toutes les issues de python-openapi/openapi-spec-validator
Issues similaires
-
triage/confirmed
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
agentscope-ai/agentscope#2775 ·
-
comp/desktop P3 type/bug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
NousResearch/hermes-agent#118866 ·
-
bug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
apache/cloudstack#14222 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100