Skip to content

Commit 84f7793

Browse files
release: 4.8.0 (#88)
* codegen metadata * chore(internal): clean up maven repo artifact script and add html documentation to repo root * chore: test on Jackson 2.14.0 to avoid encountering FasterXML/jackson-databind#3240 in tests fix: date time deserialization leniency * chore(internal): improve maven repo docs * fix(client): disallow coercion from float to int * chore(internal): update `actions/checkout` version * fix(client): fully respect max retries fix(client): send retry count header for max retries 0 chore(internal): depend on packages directly in example * chore(ci): upgrade `actions/setup-java` * chore(internal): update maven repo doc to include authentication * feat(client): send `X-Stainless-Kotlin-Version` header * docs: add comment for arbitrary value fields * chore(internal): correct cache invalidation for `SKIP_MOCK_TESTS` * fix(client): preserve time zone in lenient date-time parsing * chore(ci): upgrade `actions/github-script` * docs: clarify version field description in AutomationTemplate * release: 4.8.0 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent 56aab60 commit 84f7793

28 files changed

Lines changed: 309 additions & 94 deletions

.github/workflows/ci.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ jobs:
2020
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
2121

2222
steps:
23-
- uses: actions/checkout@v4
23+
- uses: actions/checkout@v6
2424

2525
- name: Set up Java
26-
uses: actions/setup-java@v4
26+
uses: actions/setup-java@v5
2727
with:
2828
distribution: temurin
2929
java-version: |
@@ -47,10 +47,10 @@ jobs:
4747
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
4848

4949
steps:
50-
- uses: actions/checkout@v4
50+
- uses: actions/checkout@v6
5151

5252
- name: Set up Java
53-
uses: actions/setup-java@v4
53+
uses: actions/setup-java@v5
5454
with:
5555
distribution: temurin
5656
java-version: |
@@ -67,7 +67,7 @@ jobs:
6767
- name: Get GitHub OIDC Token
6868
if: github.repository == 'stainless-sdks/courier-java'
6969
id: github-oidc
70-
uses: actions/github-script@v6
70+
uses: actions/github-script@v8
7171
with:
7272
script: core.setOutput('github_token', await core.getIDToken());
7373

@@ -85,10 +85,10 @@ jobs:
8585
runs-on: ${{ github.repository == 'stainless-sdks/courier-java' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
8686
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
8787
steps:
88-
- uses: actions/checkout@v4
88+
- uses: actions/checkout@v6
8989

9090
- name: Set up Java
91-
uses: actions/setup-java@v4
91+
uses: actions/setup-java@v5
9292
with:
9393
distribution: temurin
9494
java-version: |

.github/workflows/publish-sonatype.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ jobs:
1414
runs-on: ubuntu-latest
1515

1616
steps:
17-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v6
1818

1919
- name: Set up Java
20-
uses: actions/setup-java@v4
20+
uses: actions/setup-java@v5
2121
with:
2222
distribution: temurin
2323
java-version: |

.github/workflows/release-doctor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
if: github.repository == 'trycourier/courier-java' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')
1313

1414
steps:
15-
- uses: actions/checkout@v4
15+
- uses: actions/checkout@v6
1616

1717
- name: Check release environment
1818
run: |

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "4.7.1"
2+
".": "4.8.0"
33
}

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 78
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/courier%2Fcourier-e3e54d99e2a73fd87519270f2685131050d342e86a4e96130247b854deae5c20.yml
3-
openapi_spec_hash: 897a3fbee24f24d021d6af0df480220c
4-
config_hash: 66a5c28bb74d78454456d9ce7d1c0a0c
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/courier%2Fcourier-4469c7d243ac17a71d48187ede11d7f6fd178d1006f2542c973259c5c37007fb.yml
3+
openapi_spec_hash: 2036a46b6fa7ac8eae981583bd452458
4+
config_hash: 93eb861d9572cea4d66edeab309e08c6

CHANGELOG.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,41 @@
11
# Changelog
22

3+
## 4.8.0 (2026-01-27)
4+
5+
Full Changelog: [v4.7.1...v4.8.0](https://github.com/trycourier/courier-java/compare/v4.7.1...v4.8.0)
6+
7+
### Features
8+
9+
* **client:** send `X-Stainless-Kotlin-Version` header ([11e5765](https://github.com/trycourier/courier-java/commit/11e5765a138fa78d8aaf0abc3df4dffd1493d3b4))
10+
11+
12+
### Bug Fixes
13+
14+
* **client:** disallow coercion from float to int ([5263a13](https://github.com/trycourier/courier-java/commit/5263a1385622f70224b69681b7f75661d89107ef))
15+
* **client:** fully respect max retries ([33cdc16](https://github.com/trycourier/courier-java/commit/33cdc16ed453f885b62c996480751a45035e0afd))
16+
* **client:** preserve time zone in lenient date-time parsing ([07887c9](https://github.com/trycourier/courier-java/commit/07887c919084244ae3805068e13aa7c7a6604aec))
17+
* **client:** send retry count header for max retries 0 ([33cdc16](https://github.com/trycourier/courier-java/commit/33cdc16ed453f885b62c996480751a45035e0afd))
18+
* date time deserialization leniency ([fa50329](https://github.com/trycourier/courier-java/commit/fa50329d5f5e1cd2c555d5deb71b4dd4d8a57c4a))
19+
20+
21+
### Chores
22+
23+
* **ci:** upgrade `actions/github-script` ([b428743](https://github.com/trycourier/courier-java/commit/b428743ceed1201f44ca1ae23ddae0c10a323a86))
24+
* **ci:** upgrade `actions/setup-java` ([01049af](https://github.com/trycourier/courier-java/commit/01049af97f49ca7d1ad74d09017838263e24735f))
25+
* **internal:** clean up maven repo artifact script and add html documentation to repo root ([e1937ab](https://github.com/trycourier/courier-java/commit/e1937aba76551a3e486cb8961c3f1e0981d9a57f))
26+
* **internal:** correct cache invalidation for `SKIP_MOCK_TESTS` ([3bc2faa](https://github.com/trycourier/courier-java/commit/3bc2faa7b3d346e8c4466a58039947f2cebe04ca))
27+
* **internal:** depend on packages directly in example ([33cdc16](https://github.com/trycourier/courier-java/commit/33cdc16ed453f885b62c996480751a45035e0afd))
28+
* **internal:** improve maven repo docs ([af0c83b](https://github.com/trycourier/courier-java/commit/af0c83b582d3d26589a0f1176405a365df1e26b5))
29+
* **internal:** update `actions/checkout` version ([337fcd7](https://github.com/trycourier/courier-java/commit/337fcd7a6f5f7d5747ab6f48e74287e58d18eca0))
30+
* **internal:** update maven repo doc to include authentication ([dbf1829](https://github.com/trycourier/courier-java/commit/dbf182983acea01de5784fe9df85f1d43482de5a))
31+
* test on Jackson 2.14.0 to avoid encountering FasterXML/jackson-databind[#3240](https://github.com/trycourier/courier-java/issues/3240) in tests ([fa50329](https://github.com/trycourier/courier-java/commit/fa50329d5f5e1cd2c555d5deb71b4dd4d8a57c4a))
32+
33+
34+
### Documentation
35+
36+
* add comment for arbitrary value fields ([20bc1ec](https://github.com/trycourier/courier-java/commit/20bc1ecfa8818a7f6eb6669352d74306b308cf21))
37+
* clarify version field description in AutomationTemplate ([d853521](https://github.com/trycourier/courier-java/commit/d8535218c37e9315c2bbe6b5161caaa2d66fb603))
38+
339
## 4.7.1 (2026-01-14)
440

541
Full Changelog: [v4.7.0...v4.7.1](https://github.com/trycourier/courier-java/compare/v4.7.0...v4.7.1)

README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
<!-- x-release-please-start-version -->
44

5-
[![Maven Central](https://img.shields.io/maven-central/v/com.courier/courier-java)](https://central.sonatype.com/artifact/com.courier/courier-java/4.7.1)
6-
[![javadoc](https://javadoc.io/badge2/com.courier/courier-java/4.7.1/javadoc.svg)](https://javadoc.io/doc/com.courier/courier-java/4.7.1)
5+
[![Maven Central](https://img.shields.io/maven-central/v/com.courier/courier-java)](https://central.sonatype.com/artifact/com.courier/courier-java/4.8.0)
6+
[![javadoc](https://javadoc.io/badge2/com.courier/courier-java/4.8.0/javadoc.svg)](https://javadoc.io/doc/com.courier/courier-java/4.8.0)
77

88
<!-- x-release-please-end -->
99

@@ -13,7 +13,7 @@ It is generated with [Stainless](https://www.stainless.com/).
1313

1414
<!-- x-release-please-start-version -->
1515

16-
The REST API documentation can be found on [www.courier.com](https://www.courier.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.courier/courier-java/4.7.1).
16+
The REST API documentation can be found on [www.courier.com](https://www.courier.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.courier/courier-java/4.8.0).
1717

1818
<!-- x-release-please-end -->
1919

@@ -24,7 +24,7 @@ The REST API documentation can be found on [www.courier.com](https://www.courier
2424
### Gradle
2525

2626
```kotlin
27-
implementation("com.courier:courier-java:4.7.1")
27+
implementation("com.courier:courier-java:4.8.0")
2828
```
2929

3030
### Maven
@@ -33,7 +33,7 @@ implementation("com.courier:courier-java:4.7.1")
3333
<dependency>
3434
<groupId>com.courier</groupId>
3535
<artifactId>courier-java</artifactId>
36-
<version>4.7.1</version>
36+
<version>4.8.0</version>
3737
</dependency>
3838
```
3939

@@ -310,6 +310,8 @@ If the SDK threw an exception, but you're _certain_ the version is compatible, t
310310
> [!CAUTION]
311311
> We make no guarantee that the SDK works correctly when the Jackson version check is disabled.
312312
313+
Also note that there are bugs in older Jackson versions that can affect the SDK. We don't work around all Jackson bugs ([example](https://github.com/FasterXML/jackson-databind/issues/3240)) and expect users to upgrade Jackson for those instead.
314+
313315
## Network options
314316

315317
### Retries

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ repositories {
88

99
allprojects {
1010
group = "com.courier"
11-
version = "4.7.1" // x-release-please-version
11+
version = "4.8.0" // x-release-please-version
1212
}
1313

1414
subprojects {

buildSrc/src/main/kotlin/courier.kotlin.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ kotlin {
3333
tasks.withType<Test>().configureEach {
3434
systemProperty("junit.jupiter.execution.parallel.enabled", true)
3535
systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent")
36+
37+
// `SKIP_MOCK_TESTS` affects which tests run so it must be added as input for proper cache invalidation.
38+
inputs.property("skipMockTests", System.getenv("SKIP_MOCK_TESTS")).optional(true)
3639
}
3740

3841
val ktfmt by configurations.creating

courier-java-client-okhttp/src/main/kotlin/com/courier/client/okhttp/OkHttpClient.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,8 @@ private constructor(@JvmSynthetic internal val okHttpClient: okhttp3.OkHttpClien
230230
fun build(): OkHttpClient =
231231
OkHttpClient(
232232
okhttp3.OkHttpClient.Builder()
233+
// `RetryingHttpClient` handles retries if the user enabled them.
234+
.retryOnConnectionFailure(false)
233235
.connectTimeout(timeout.connect())
234236
.readTimeout(timeout.read())
235237
.writeTimeout(timeout.write())

0 commit comments

Comments
 (0)