Fix schema generation for $ref with sibling description (OpenAPI 3.1) - #2
Closed
joseegman-idoneea wants to merge 1 commit into
Closed
Fix schema generation for $ref with sibling description (OpenAPI 3.1)#2joseegman-idoneea wants to merge 1 commit into
joseegman-idoneea wants to merge 1 commit into
Conversation
OpenAPI 3.1 / JSON Schema 2020-12 allow sibling keywords (e.g. `description`) next to `$ref`, and their ordering is not significant. `ApiTool.hasRef` only treated a node as a reference when `$ref` was the *first* field, so a property declaring `description` before `$ref` was not recognised as a reference: it fell through to the basic-type branch and generated a field with an empty type, breaking generation. `hasRef` now detects a top-level `$ref` regardless of field ordering. Adds a regression test (`testRefWithDescription`) covering both orderings. Bumps version 6.4.1 -> 6.4.2. Closes #1 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Owner
Author
|
Reemplazado por el PR contra upstream: sngular#381 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problema
En OpenAPI 3.1 un
$refpuede llevar hermanos comodescription. Cuando una propiedad combina$ref+description, el generador de schemas rompe y genera un campo con tipo vacío.Causa
ApiTool.hasRefsolo reconocía la referencia si$refera el primer campo del nodo. Condescriptionantes de$ref, devolvíafalsey el nodo caía en la ramaisBasicType.Cambios
hasRefahora detecta un$refde nivel superior con independencia del orden de los campos.testRefWithDescription(cubredescriptionantes y después de$ref) con sus assets.6.4.1→6.4.2en engine, maven-plugin y gradle-plugin.Verificación
Suite completa del módulo
multiapi-engine: 109 tests, 0 fallos (mvn test).Closes #1
🤖 Generated with Claude Code