Skip to navigation

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.