3.2.0
(feat):
Add comprehensive request and response body validation to wire tests for Java SDKs.
Wire tests now validate that SDKs correctly serialize request bodies and deserialize
response bodies, catching regressions in JSON handling.
3.1.0
(feat):
Support Maven publishTarget from IR for local filesystem SDK generation.
3.0.1
(fix):
Fix compilation errors in generated SDK snippets for collections with optional types and unknown size arrays.
Generated documentation (README.md and reference.md) now shows cleaner, more idiomatic Java code examples
using Arrays.asList()
directly instead of unnecessary ArrayList
wrapping.
3.0.0
(break):
The SDK generator now defaults to forward-compatible enums, providing resilience against new enum variants
added on the backend. This is a breaking change that affects the structure of generated enum types.
To revert to the previous behavior with traditional Java enums, add the following configuration to your
generators.yml
file:
(feat):
Forward-compatible enums are now enabled by default. Generated SDKs will no longer throw errors when
encountering unknown enum variants, instead handling them gracefully with an UNKNOWN value. This is
particularly important for:
- Mobile applications that cannot be easily updated
- Maintaining backward compatibility when backend adds new enum values
- Arrays of enum values where new variants previously caused client failures
With forward-compatible enums, the generated code changes from traditional Java enums to class-based enums that support unknown values through a visitor pattern.
2.43.3
(fix):
Bugfix to make sure that the Java SDK compiles when header based versioning with defaults is enabled.
2.43.2
(fix):
Fix custom license name extraction in build.gradle to display actual license names from LICENSE files
instead of toString() representations. The generator now reads the first line of custom LICENSE files
and displays it as the license name.
2.43.1
(fix):
Fix Maven Central signing configuration to correctly use 3-parameter useInMemoryPgpKeys() method.
The signing block was incorrectly using MAVEN_SIGNATURE_SECRET_KEY as the key ID parameter
instead of MAVEN_SIGNATURE_KID, causing Sonatype Central validation failures during deployment.
2.43.0
(feat):
Add support for the apiName
and disabledFeatures
readme config options.
2.42.1
(fix):
Fix nullable fields incorrectly requiring non-null values in staged builders when
use-nullable-annotation is enabled.
2.42.0
(feat):
Add support for semantic distinction between nullable<T>
and optional<T>
types via use-nullable-annotation
flag.
When enabled, nullable<T>
generates as raw type T
with @Nullable
annotation, while optional<T>
remains as Optional<T>
.
This provides proper API semantics for fields that can be null vs those that may be absent from requests.
2.41.3
(feat):
Add convenient addHeader()
method to SDK builders for adding custom headers without requiring
OkHttpClient customization or inheritance.
2.41.2
(feat):
Link reference.md in the README.md.
2.41.1
(fix):
Fix integer overflow when processing OpenAPI specs with large integer values in examples. Values exceeding Java’s Integer range are automatically converted to long type to prevent generation failures.