Skip to content

Release 1.6.0 - #346

Merged
derveloper merged 5 commits into
mainfrom
release/1.6.0
Jul 9, 2026
Merged

Release 1.6.0#346
derveloper merged 5 commits into
mainfrom
release/1.6.0

Conversation

@derveloper

Copy link
Copy Markdown
Owner

Summary

Prepare the 1.6.0 release with four user-facing OpenAPI DSL improvements:

  • preserve insertion order when serializing OpenAPI documents to strings and files;
  • support every OpenAPI 3.0 component category with matching reference helpers;
  • register root and transitively referenced schemas automatically without overwriting explicit customizations;
  • optionally infer required properties from Kotlin constructor nullability while preserving annotations, default behavior, and build isolation;
  • bump the published Gradle project version from 1.5.0 to 1.6.0.

Compatibility

  • OpenAPI.asJson() keeps its existing JSONObject return type and intentionally unspecified key order.
  • The existing openapiDsl { ... } JVM signature remains available.
  • Kotlin required-property inference is opt-in and disabled by default.
  • Explicit component customizations and Swagger requiredMode annotations take precedence over inferred values.

Verification

  • ./gradlew test --rerun-tasks --console=plain
  • 45 tests, 0 failures, 0 errors, 0 skipped
  • nested, parallel, exception-cleanup, and same-model sequential schema builds covered
  • all changed code files remain below 500 lines
  • Gradle configuration resolves the publication version as 1.6.0

Issues

Closes #146
Closes #88
Closes #245
Closes #147

Write ordered strings and files directly with Jackson while keeping the existing JSONObject API compatible.

Closes #146
Add builders and reference helpers for parameters, responses, request bodies, examples, headers, links, and callbacks.

Closes #88
Collect schema references per DSL build and merge every transitive model without overwriting explicit component customizations.

Closes #245
Add opt-in, build-scoped required inference from Kotlin constructor nullability while preserving explicit annotations and default behavior.

Closes #147
Prepare the Maven publication for release 1.6.0.
@derveloper
derveloper merged commit 6dc9ee3 into main Jul 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant