diff --git a/.release-please-manifest.json b/.release-please-manifest.json index f1a48d37..1f3b9543 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "4.7.1" + ".": "4.7.2" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index d697cee1..512f74cf 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 135 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-eeba8addf3a5f412e5ce8d22031e60c61650cee3f5d9e587a2533f6818a249ea.yml openapi_spec_hash: 0a4d8ad2469823ce24a3fd94f23f1c2b -config_hash: 0bb1941a78ece0b610a2fbba7d74a84c +config_hash: 630eea84bb3067d25640419af058ed56 diff --git a/CHANGELOG.md b/CHANGELOG.md index 679d90a5..9758c1a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 4.7.2 (2025-11-13) + +Full Changelog: [v4.7.1...v4.7.2](https://github.com/openai/openai-java/compare/v4.7.1...v4.7.2) + +### Bug Fixes + +* **client:** multi-value header serialization ([4a198b2](https://github.com/openai/openai-java/commit/4a198b2f0e2531295bb1bf9d4ca2fdbd74af64e5)) + ## 4.7.1 (2025-11-04) Full Changelog: [v4.7.0...v4.7.1](https://github.com/openai/openai-java/compare/v4.7.0...v4.7.1) diff --git a/README.md b/README.md index 00fba3ac..fda616ef 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ -[![Maven Central](https://img.shields.io/maven-central/v/com.openai/openai-java)](https://central.sonatype.com/artifact/com.openai/openai-java/4.7.1) -[![javadoc](https://javadoc.io/badge2/com.openai/openai-java/4.7.1/javadoc.svg)](https://javadoc.io/doc/com.openai/openai-java/4.7.1) +[![Maven Central](https://img.shields.io/maven-central/v/com.openai/openai-java)](https://central.sonatype.com/artifact/com.openai/openai-java/4.7.2) +[![javadoc](https://javadoc.io/badge2/com.openai/openai-java/4.7.2/javadoc.svg)](https://javadoc.io/doc/com.openai/openai-java/4.7.2) @@ -11,7 +11,7 @@ The OpenAI Java SDK provides convenient access to the [OpenAI REST API](https:// -The REST API documentation can be found on [platform.openai.com](https://platform.openai.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.openai/openai-java/4.7.1). +The REST API documentation can be found on [platform.openai.com](https://platform.openai.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.openai/openai-java/4.7.2). @@ -24,7 +24,7 @@ The REST API documentation can be found on [platform.openai.com](https://platfor ### Gradle ```kotlin -implementation("com.openai:openai-java:4.7.1") +implementation("com.openai:openai-java:4.7.2") ``` ### Maven @@ -33,7 +33,7 @@ implementation("com.openai:openai-java:4.7.1") com.openai openai-java - 4.7.1 + 4.7.2 ``` @@ -1342,7 +1342,7 @@ If you're using Spring Boot, then you can use the SDK's [Spring Boot starter](ht #### Gradle ```kotlin -implementation("com.openai:openai-java-spring-boot-starter:4.7.1") +implementation("com.openai:openai-java-spring-boot-starter:4.7.2") ``` #### Maven @@ -1351,7 +1351,7 @@ implementation("com.openai:openai-java-spring-boot-starter:4.7.1") com.openai openai-java-spring-boot-starter - 4.7.1 + 4.7.2 ``` diff --git a/build.gradle.kts b/build.gradle.kts index db96019e..3060ee82 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,7 +8,7 @@ repositories { allprojects { group = "com.openai" - version = "4.7.1" // x-release-please-version + version = "4.7.2" // x-release-please-version } subprojects { diff --git a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt index e4f63c28..d99c47cb 100644 --- a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt +++ b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt @@ -109,19 +109,19 @@ class OkHttpClient private constructor(private val okHttpClient: okhttp3.OkHttpC val builder = Request.Builder().url(toUrl()).method(method.name, body) headers.names().forEach { name -> - headers.values(name).forEach { builder.header(name, it) } + headers.values(name).forEach { builder.addHeader(name, it) } } if ( !headers.names().contains("X-Stainless-Read-Timeout") && client.readTimeoutMillis != 0 ) { - builder.header( + builder.addHeader( "X-Stainless-Read-Timeout", Duration.ofMillis(client.readTimeoutMillis.toLong()).seconds.toString(), ) } if (!headers.names().contains("X-Stainless-Timeout") && client.callTimeoutMillis != 0) { - builder.header( + builder.addHeader( "X-Stainless-Timeout", Duration.ofMillis(client.callTimeoutMillis.toLong()).seconds.toString(), )