4.37.2
(fix): Build core/ObjectMappers.JSON_MAPPER with new ObjectMapper().registerModule(...) instead of
JsonMapper.builder(), so generated SDKs run on Jackson 2.9.x (JsonMapper was the only
Jackson 2.10+ symbol in the generated code and failed with NoClassDefFoundError at runtime).
ObjectMappers.stringify() no longer mutates the shared mapper via
setSerializationInclusion(ALWAYS) (a no-op: ALWAYS is Jackson’s default and generated
models declare @JsonInclude(NON_ABSENT) at class level), and parseErrorBody() catches
IOException (the supertype readValue declares on 2.9) instead of JsonProcessingException.
Mapper configuration and serialized output are unchanged.
4.37.1
(chore): Re-publish the Java SDK generator: the 4.36.0 (retryOnStatusCodes) and 4.37.0 (retryDelays) images were never
pushed because the publish workflow broke on the new ubuntu-latest runner image (JDK 25); this release carries both
features with no further code changes.
4.37.0
(feat): Add retryDelays(List<Duration>) to ClientOptions.Builder and the generated root client builders (sync, async
and multi-auth stages) for an explicit retry schedule: the n-th retry waits for the n-th duration and the request
stops retrying once the list is exhausted, so the list size replaces maxRetries and the exponential backoff
settings. Delays are used as-is (no jitter); Retry-After / X-RateLimit-Reset headers still take precedence
for that attempt. Default behaviour is unchanged.
4.36.0
(feat): Add retryOnStatusCodes(Set<Integer>) to ClientOptions.Builder and the generated root client builders
(sync, async and multi-auth stages). It replaces the default set of HTTP status codes that trigger an automatic
retry (408, 429 and 5xx), so a consumer can retry only 429, or 429 and 503, and have other 5xx responses
returned as-is. The default is unchanged; maxRetries, the backoff settings and Retry-After handling are
unaffected.