[2.1.0-beta.6 and oas-3.1.0] Request body property data type change is detected as compatible or no_change
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 38/100
Línea de trabajo
Comienza reproduciendo el informe con old.yml y new.yml mediante el comando de Docker de openapi-diff indicado, comparando los resultados de OpenAPI 3.1.0 con el comportamiento de 3.0.3. Rastrea la comparación del tipo del esquema del cuerpo de la solicitud y añade cobertura de regresión para los cambios de string/object y string/integer; se considera completado cuando estos cambios se notifican como incompatibles.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
- string to object (actual: compatible, expected: incompatible)
- string to integer/integer to string (actual: no_change, expected: incompatible)
Case 1:
old.yml
openapi: 3.1.0
info:
title: Demo API
version: v1
paths:
/endpoint:
post:
requestBody:
content:
application/json:
schema:
type: object
required:
- requiredProp
- requiredToRemoveProp
- dataTypeChangedRequiredProp
- requiredToOptionalProp
properties:
requiredProp:
type: string
optionalProp:
type: string
optionalToRemoveProp:
type: string
requiredToRemoveProp:
type: string
dataTypeChangedRequiredProp:
type: string
dataTypeChangedOptionalProp:
type: string
optionalToRequiredProp:
type: string
requiredToOptionalProp:
type: string
responses:
default:
description: successful operation
content:
application/json:
schema:
type: object
properties:
status:
type: integer
format: int64
example: 201
new.yml
openapi: 3.1.0
info:
title: Demo API
version: v1
paths:
/endpoint:
post:
requestBody:
content:
application/json:
schema:
type: object
required:
- requiredProp
- requiredToRemoveProp
- dataTypeChangedRequiredProp
- requiredToOptionalProp
properties:
requiredProp:
type: string
optionalProp:
type: string
optionalToRemoveProp:
type: string
requiredToRemoveProp:
type: string
dataTypeChangedRequiredProp:
type: object
properties:
id:
type: string
dataTypeChangedOptionalProp:
type: string
optionalToRequiredProp:
type: string
requiredToOptionalProp:
type: string
responses:
default:
description: successful operation
content:
application/json:
schema:
type: object
properties:
status:
type: integer
format: int64
example: 201
Case 2:
old.yml
openapi: 3.1.0
info:
title: Demo API
version: v1
paths:
/endpoint:
post:
requestBody:
content:
application/json:
schema:
type: object
required:
- requiredProp
- requiredToRemoveProp
- dataTypeChangedRequiredProp
- requiredToOptionalProp
properties:
requiredProp:
type: string
optionalProp:
type: string
optionalToRemoveProp:
type: string
requiredToRemoveProp:
type: string
dataTypeChangedRequiredProp:
type: integer
dataTypeChangedOptionalProp:
type: string
optionalToRequiredProp:
type: string
requiredToOptionalProp:
type: string
responses:
default:
description: successful operation
content:
application/json:
schema:
type: object
properties:
status:
type: integer
format: int64
example: 201
new.yml
openapi: 3.1.0
info:
title: Demo API
version: v1
paths:
/endpoint:
post:
requestBody:
content:
application/json:
schema:
type: object
required:
- requiredProp
- requiredToRemoveProp
- dataTypeChangedRequiredProp
- requiredToOptionalProp
properties:
requiredProp:
type: string
optionalProp:
type: string
optionalToRemoveProp:
type: string
requiredToRemoveProp:
type: string
dataTypeChangedRequiredProp:
type: string
dataTypeChangedOptionalProp:
type: string
optionalToRequiredProp:
type: string
requiredToOptionalProp:
type: string
responses:
default:
description: successful operation
content:
application/json:
schema:
type: object
properties:
status:
type: integer
format: int64
example: 201
Examples are having data-type change only for required property but tested the same for optional property giving same output
Command used: docker run --rm -t -v $(pwd):/specs openapitools/openapi-diff:2.1.0-beta.6 /specs/old.yml /specs/new.yml --state
EDIT: The same changes are considered as incompatible with openapi: 3.0.3 and below
- Lenguaje dominante
- Java
- Estrellas
- 1.1k
- Forks
- 190
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de OpenAPITools/openapi-diff
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
OpenAPITools/openapi-diff#506 ·
-
good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
OpenAPITools/openapi-diff#364 ·
-
bug OpenAP 3.1.0 Support
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
OpenAPITools/openapi-diff#910 · 1 comentario ·
-
Render capabilities
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
OpenAPITools/openapi-diff#893 · 1 comentario ·
-
Breaking/Non-Breaking classification
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
OpenAPITools/openapi-diff#886 ·
Todos los issues de OpenAPITools/openapi-diff
Issues similares
-
Bug Java Platform: Java
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
getsentry/sentry-java#6138 · 1 comentario ·
-
bug needs triage p2
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
GoogleCloudPlatform/DataflowTemplates#4273 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
bug needs triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100