Skip to content

Commit 3279420

Browse files
release: 0.11.0 (#143)
* feat(client): add `HttpRequest#url()` method * feat(api): api update * feat(client): allow configuring dispatcher executor service * feat(api): api update * chore(internal): support uploading Maven repo artifacts to stainless package server * 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 * feat(api): api update * 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 * 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` * feat(api): api update * feat(api): api update * feat(api): api update * chore(internal): allow passing args to `./scripts/test` * chore(internal): upgrade AssertJ * feat(api): api update * codegen metadata * codegen metadata * codegen metadata * codegen metadata * chore(internal): update `TestServerExtension` comment * chore(internal): make `OkHttp` constructor internal * feat(client): add connection pooling option * chore: update mock server docs * chore: make `Properties` more resilient to `null` * chore: drop apache dependency * chore(internal): expand imports * chore(docs): add missing descriptions * feat(api): api update * fix: fix request delays for retrying to be more respectful of high requested delays * chore(internal): bump palantir-java-format * chore(test): do not count install time for mock server timeout * chore(ci): skip uploading artifacts on stainless-internal branches * fix(client): incorrect `Retry-After` parsing * chore(internal): tweak CI branches * chore(internal): update retry delay tests * fix(client): allow updating header/query affecting fields in `toBuilder()` * refactor(tests): switch from prism to steady * chore(tests): bump steady to v0.19.4 * chore(tests): bump steady to v0.19.5 * chore(internal): update gitignore * release: 0.11.0 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent 56ecb0b commit 3279420

93 files changed

Lines changed: 3927 additions & 1409 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 36 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
name: CI
22
on:
33
push:
4-
branches-ignore:
5-
- 'generated'
6-
- 'codegen/**'
7-
- 'integrated/**'
8-
- 'stl-preview-head/**'
9-
- 'stl-preview-base/**'
4+
branches:
5+
- '**'
6+
- '!integrated/**'
7+
- '!stl-preview-head/**'
8+
- '!stl-preview-base/**'
9+
- '!generated'
10+
- '!codegen/**'
11+
- 'codegen/stl/**'
1012
pull_request:
1113
branches-ignore:
1214
- 'stl-preview-head/**'
@@ -20,10 +22,10 @@ jobs:
2022
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
2123

2224
steps:
23-
- uses: actions/checkout@v4
25+
- uses: actions/checkout@v6
2426

2527
- name: Set up Java
26-
uses: actions/setup-java@v4
28+
uses: actions/setup-java@v5
2729
with:
2830
distribution: temurin
2931
java-version: |
@@ -40,14 +42,17 @@ jobs:
4042
build:
4143
timeout-minutes: 15
4244
name: build
45+
permissions:
46+
contents: read
47+
id-token: write
4348
runs-on: ${{ github.repository == 'stainless-sdks/prelude-java' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
4449
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
4550

4651
steps:
47-
- uses: actions/checkout@v4
52+
- uses: actions/checkout@v6
4853

4954
- name: Set up Java
50-
uses: actions/setup-java@v4
55+
uses: actions/setup-java@v5
5156
with:
5257
distribution: temurin
5358
java-version: |
@@ -61,16 +66,35 @@ jobs:
6166
- name: Build SDK
6267
run: ./scripts/build
6368

69+
- name: Get GitHub OIDC Token
70+
if: |-
71+
github.repository == 'stainless-sdks/prelude-java' &&
72+
!startsWith(github.ref, 'refs/heads/stl/')
73+
id: github-oidc
74+
uses: actions/github-script@v8
75+
with:
76+
script: core.setOutput('github_token', await core.getIDToken());
77+
78+
- name: Build and upload Maven artifacts
79+
if: |-
80+
github.repository == 'stainless-sdks/prelude-java' &&
81+
!startsWith(github.ref, 'refs/heads/stl/')
82+
env:
83+
URL: https://pkg.stainless.com/s
84+
AUTH: ${{ steps.github-oidc.outputs.github_token }}
85+
SHA: ${{ github.sha }}
86+
PROJECT: prelude-java
87+
run: ./scripts/upload-artifacts
6488
test:
6589
timeout-minutes: 15
6690
name: test
6791
runs-on: ${{ github.repository == 'stainless-sdks/prelude-java' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
6892
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
6993
steps:
70-
- uses: actions/checkout@v4
94+
- uses: actions/checkout@v6
7195

7296
- name: Set up Java
73-
uses: actions/setup-java@v4
97+
uses: actions/setup-java@v5
7498
with:
7599
distribution: temurin
76100
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 == 'prelude-so/java-sdk' && (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: |

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
.prism.log
2+
.stdy.log
23
.gradle
34
.idea
45
.kotlin

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "0.10.0"
2+
".": "0.11.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: 19
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/prelude%2Fprelude-fe14bed3c1b6245444e1a53e7b0b172301c207ef9500dc68f4d8e58a7bfec436.yml
3-
openapi_spec_hash: 4acdc9dd487011b2391f6fe02812a6bd
4-
config_hash: 55380048fe5cf686421acf7eeaae21be
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/prelude%2Fprelude-c9124c257dd54dd0728cb57306b9082007439bfefac11642542605edb3e7606d.yml
3+
openapi_spec_hash: 61dc64cc814d10975a8825ec88fd9c1c
4+
config_hash: 107ae5754168e80c4ad2cd779a75bc36

CHANGELOG.md

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

3+
## 0.11.0 (2026-03-23)
4+
5+
Full Changelog: [v0.10.0...v0.11.0](https://github.com/prelude-so/java-sdk/compare/v0.10.0...v0.11.0)
6+
7+
### Features
8+
9+
* **api:** api update ([ca9ee11](https://github.com/prelude-so/java-sdk/commit/ca9ee118f3800cfde6765103742c06a015f47111))
10+
* **api:** api update ([d683d44](https://github.com/prelude-so/java-sdk/commit/d683d441c3d8d89015ee9ab971ad883fc8f81b32))
11+
* **api:** api update ([01e0e53](https://github.com/prelude-so/java-sdk/commit/01e0e5369605017ae1ef44d473d593584ef07a71))
12+
* **api:** api update ([53cbdac](https://github.com/prelude-so/java-sdk/commit/53cbdac9a2e4b4cffaab963be9edeb77f4a07cf3))
13+
* **api:** api update ([7b287a1](https://github.com/prelude-so/java-sdk/commit/7b287a1a1f2bae3f1185bb8650a49169947bbeb0))
14+
* **api:** api update ([aabe63c](https://github.com/prelude-so/java-sdk/commit/aabe63c8899e9177d6d053cdd998806302c9c111))
15+
* **api:** api update ([74b758c](https://github.com/prelude-so/java-sdk/commit/74b758c2e80672f942000e1201edd081d67b0d18))
16+
* **api:** api update ([dc0fc24](https://github.com/prelude-so/java-sdk/commit/dc0fc245ce976922680aaa766216f76b039f3d46))
17+
* **client:** add `HttpRequest#url()` method ([6b5a7b3](https://github.com/prelude-so/java-sdk/commit/6b5a7b3018b374bfc0c8337b82d9ae2cc8ca20ac))
18+
* **client:** add connection pooling option ([dabf164](https://github.com/prelude-so/java-sdk/commit/dabf164c493a424cd9542d1355af0113cc16c6be))
19+
* **client:** allow configuring dispatcher executor service ([960cc19](https://github.com/prelude-so/java-sdk/commit/960cc193330b9e3b9fb29d48283430029846c3aa))
20+
* **client:** send `X-Stainless-Kotlin-Version` header ([32f4d72](https://github.com/prelude-so/java-sdk/commit/32f4d72f068581e4257c5934d3c58b75128f0289))
21+
22+
23+
### Bug Fixes
24+
25+
* **client:** allow updating header/query affecting fields in `toBuilder()` ([903da67](https://github.com/prelude-so/java-sdk/commit/903da674a34dcead8c0889ae611204d599caf99b))
26+
* **client:** disallow coercion from float to int ([a498a2f](https://github.com/prelude-so/java-sdk/commit/a498a2f53afeaef5b2dc34b4ade246af2fec6167))
27+
* **client:** fully respect max retries ([db20e56](https://github.com/prelude-so/java-sdk/commit/db20e56fa9a8b373305bff3ae10afea7bbd0ff53))
28+
* **client:** incorrect `Retry-After` parsing ([8ee79ed](https://github.com/prelude-so/java-sdk/commit/8ee79ed1d5739676b1796ee4a5dfea12b5552d0e))
29+
* **client:** preserve time zone in lenient date-time parsing ([62d4ba4](https://github.com/prelude-so/java-sdk/commit/62d4ba43268ead94f6f1ab811138bea8053a906e))
30+
* **client:** send retry count header for max retries 0 ([db20e56](https://github.com/prelude-so/java-sdk/commit/db20e56fa9a8b373305bff3ae10afea7bbd0ff53))
31+
* date time deserialization leniency ([b53df43](https://github.com/prelude-so/java-sdk/commit/b53df4388bfd39591bc9952d8039ea5e76bc6a99))
32+
* fix request delays for retrying to be more respectful of high requested delays ([249bfd4](https://github.com/prelude-so/java-sdk/commit/249bfd4b8dc6f64ff54c9cab37a66ab27ca258b5))
33+
34+
35+
### Chores
36+
37+
* **ci:** skip uploading artifacts on stainless-internal branches ([2737021](https://github.com/prelude-so/java-sdk/commit/27370217d777fa1ebf591100e2be408388575241))
38+
* **ci:** upgrade `actions/github-script` ([47e61f7](https://github.com/prelude-so/java-sdk/commit/47e61f7b26522ad8336e16e76149d6aeb34ad4e5))
39+
* **ci:** upgrade `actions/setup-java` ([e3a09ff](https://github.com/prelude-so/java-sdk/commit/e3a09ffbe9d651ef627986ab8665898ddbdaf089))
40+
* **docs:** add missing descriptions ([edc87cc](https://github.com/prelude-so/java-sdk/commit/edc87cc96ccd7f8788b4394d4d6f8274f501ad91))
41+
* drop apache dependency ([ea51709](https://github.com/prelude-so/java-sdk/commit/ea517099a868cfbc5692b303c02f3f26078442b3))
42+
* **internal:** allow passing args to `./scripts/test` ([68d4da0](https://github.com/prelude-so/java-sdk/commit/68d4da01ab6ef8c673849405051b98d5d876841c))
43+
* **internal:** bump palantir-java-format ([4460207](https://github.com/prelude-so/java-sdk/commit/4460207c304c03b09598c8a2b1cfa7c86a4a6190))
44+
* **internal:** clean up maven repo artifact script and add html documentation to repo root ([88364fc](https://github.com/prelude-so/java-sdk/commit/88364fca4159730830a8d2a41b93d7684c04c01f))
45+
* **internal:** correct cache invalidation for `SKIP_MOCK_TESTS` ([27772a9](https://github.com/prelude-so/java-sdk/commit/27772a95464ad4ca072493d67655fb09cfb0ab14))
46+
* **internal:** depend on packages directly in example ([db20e56](https://github.com/prelude-so/java-sdk/commit/db20e56fa9a8b373305bff3ae10afea7bbd0ff53))
47+
* **internal:** expand imports ([ee924bd](https://github.com/prelude-so/java-sdk/commit/ee924bd9b90bfd9454c4622c6ba891fb21a0fd5c))
48+
* **internal:** improve maven repo docs ([d891959](https://github.com/prelude-so/java-sdk/commit/d8919592a63c3c766cc07a682294c0918a896aea))
49+
* **internal:** make `OkHttp` constructor internal ([4d0d7a8](https://github.com/prelude-so/java-sdk/commit/4d0d7a8469d9a062be145775327227919a816340))
50+
* **internal:** support uploading Maven repo artifacts to stainless package server ([141a5d6](https://github.com/prelude-so/java-sdk/commit/141a5d618305ea5cb1d17eb2da4f3b578727fd02))
51+
* **internal:** tweak CI branches ([e599cbd](https://github.com/prelude-so/java-sdk/commit/e599cbdd3574f850310bd1534bcb35a19d95369b))
52+
* **internal:** update `actions/checkout` version ([bcb84ae](https://github.com/prelude-so/java-sdk/commit/bcb84ae66e0256dc8509d802e905bb73610f85cb))
53+
* **internal:** update `TestServerExtension` comment ([2f1209d](https://github.com/prelude-so/java-sdk/commit/2f1209d3d5703a3565f11f4d3b08b09da524335b))
54+
* **internal:** update gitignore ([60b2469](https://github.com/prelude-so/java-sdk/commit/60b2469a9eaabaa78e13be5fd33063b26ac5c4cd))
55+
* **internal:** update maven repo doc to include authentication ([95ce4a8](https://github.com/prelude-so/java-sdk/commit/95ce4a8a1c321fe80673d83ce10289ece6dc1895))
56+
* **internal:** update retry delay tests ([1c675ac](https://github.com/prelude-so/java-sdk/commit/1c675acbcc417480966a3c371ba29374c48269ca))
57+
* **internal:** upgrade AssertJ ([626ff7d](https://github.com/prelude-so/java-sdk/commit/626ff7d2113f7346c428e92a824ec50c38aec643))
58+
* make `Properties` more resilient to `null` ([7e517d6](https://github.com/prelude-so/java-sdk/commit/7e517d6ca2f9ed57d2263b98cd0c7ac8cd1b60b9))
59+
* test on Jackson 2.14.0 to avoid encountering FasterXML/jackson-databind[#3240](https://github.com/prelude-so/java-sdk/issues/3240) in tests ([b53df43](https://github.com/prelude-so/java-sdk/commit/b53df4388bfd39591bc9952d8039ea5e76bc6a99))
60+
* **test:** do not count install time for mock server timeout ([d631a4b](https://github.com/prelude-so/java-sdk/commit/d631a4b7a630579d45fa2330c9c2a87c22d34b2c))
61+
* **tests:** bump steady to v0.19.4 ([cf4ff3e](https://github.com/prelude-so/java-sdk/commit/cf4ff3e2ea60ba1bba3d5343ca6803dde4e02a76))
62+
* **tests:** bump steady to v0.19.5 ([758dbbe](https://github.com/prelude-so/java-sdk/commit/758dbbe77686dccdc0b4b16f20460c697d998ee3))
63+
* update mock server docs ([9ab611b](https://github.com/prelude-so/java-sdk/commit/9ab611b92520a6f17ad9c8ad4017bfe34ddf1c5e))
64+
65+
66+
### Refactors
67+
68+
* **tests:** switch from prism to steady ([33adec4](https://github.com/prelude-so/java-sdk/commit/33adec4b26941cf8f3ecfefb1f9f566eb5b98b87))
69+
370
## 0.10.0 (2025-12-05)
471

572
Full Changelog: [v0.9.0...v0.10.0](https://github.com/prelude-so/java-sdk/compare/v0.9.0...v0.10.0)

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@
186186
same "printed page" as the copyright notice for easier
187187
identification within third-party archives.
188188

189-
Copyright 2025 Prelude
189+
Copyright 2026 Prelude
190190

191191
Licensed under the Apache License, Version 2.0 (the "License");
192192
you may not use this file except in compliance with the License.

README.md

Lines changed: 26 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/so.prelude.sdk/prelude-java)](https://central.sonatype.com/artifact/so.prelude.sdk/prelude-java/0.10.0)
6-
[![javadoc](https://javadoc.io/badge2/so.prelude.sdk/prelude-java/0.10.0/javadoc.svg)](https://javadoc.io/doc/so.prelude.sdk/prelude-java/0.10.0)
5+
[![Maven Central](https://img.shields.io/maven-central/v/so.prelude.sdk/prelude-java)](https://central.sonatype.com/artifact/so.prelude.sdk/prelude-java/0.11.0)
6+
[![javadoc](https://javadoc.io/badge2/so.prelude.sdk/prelude-java/0.11.0/javadoc.svg)](https://javadoc.io/doc/so.prelude.sdk/prelude-java/0.11.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 [docs.prelude.so](https://docs.prelude.so). Javadocs are available on [javadoc.io](https://javadoc.io/doc/so.prelude.sdk/prelude-java/0.10.0).
16+
The REST API documentation can be found on [docs.prelude.so](https://docs.prelude.so). Javadocs are available on [javadoc.io](https://javadoc.io/doc/so.prelude.sdk/prelude-java/0.11.0).
1717

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

@@ -24,7 +24,7 @@ The REST API documentation can be found on [docs.prelude.so](https://docs.prelud
2424
### Gradle
2525

2626
```kotlin
27-
implementation("so.prelude.sdk:prelude-java:0.10.0")
27+
implementation("so.prelude.sdk:prelude-java:0.11.0")
2828
```
2929

3030
### Maven
@@ -33,7 +33,7 @@ implementation("so.prelude.sdk:prelude-java:0.10.0")
3333
<dependency>
3434
<groupId>so.prelude.sdk</groupId>
3535
<artifactId>prelude-java</artifactId>
36-
<version>0.10.0</version>
36+
<version>0.11.0</version>
3737
</dependency>
3838
```
3939

@@ -282,6 +282,8 @@ If the SDK threw an exception, but you're _certain_ the version is compatible, t
282282
> [!CAUTION]
283283
> We make no guarantee that the SDK works correctly when the Jackson version check is disabled.
284284
285+
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.
286+
285287
## Network options
286288

287289
### Retries
@@ -357,6 +359,25 @@ PreludeClient client = PreludeOkHttpClient.builder()
357359
.build();
358360
```
359361

362+
### Connection pooling
363+
364+
To customize the underlying OkHttp connection pool, configure the client using the `maxIdleConnections` and `keepAliveDuration` methods:
365+
366+
```java
367+
import java.time.Duration;
368+
import so.prelude.sdk.client.PreludeClient;
369+
import so.prelude.sdk.client.okhttp.PreludeOkHttpClient;
370+
371+
PreludeClient client = PreludeOkHttpClient.builder()
372+
.fromEnv()
373+
// If `maxIdleConnections` is set, then `keepAliveDuration` must be set, and vice versa.
374+
.maxIdleConnections(10)
375+
.keepAliveDuration(Duration.ofMinutes(2))
376+
.build();
377+
```
378+
379+
If both options are unset, OkHttp's default connection pool settings are used.
380+
360381
### HTTPS
361382

362383
> [!NOTE]

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 = "so.prelude.sdk"
11-
version = "0.10.0" // x-release-please-version
11+
version = "0.11.0" // x-release-please-version
1212
}
1313

1414
subprojects {

0 commit comments

Comments
 (0)