You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+101Lines changed: 101 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,107 @@ Change Log
3
3
4
4
# Next version
5
5
6
+
# Version 5.0.0-alpha.3
7
+
_2025-11-13_
8
+
9
+
### `@stream` support
10
+
11
+
You may now use [`@stream`](https://github.com/graphql/graphql-wg/blob/main/rfcs/DeferStream.md#stream) to stream list responses from a compatible server.
12
+
13
+
To do this, opt in support for the [incremental:v0.2 protocol](https://specs.apollo.dev/incremental/v0.2/):
Using `@defer` and `@stream` will stay opt-in until the RFC is merged.
27
+
28
+
### WebSockets
29
+
30
+
The [experimental WebSockets](https://github.com/apollographql/apollo-kotlin/issues/5862) are promoted to stable. In particular, the [request url](https://github.com/apollographql/apollo-kotlin/pull/6758) may now be changed in interceptors. This can be used together with [RetryStrategy](https://github.com/apollographql/apollo-kotlin/pull/6764) to change the authentication parameters when retrying a subscription. The previous implementation (using the `com.apollographql.apollo.ws` package name) is now deprecated.
31
+
32
+
Read more in the [migration guide](https://www.apollographql.com/docs/kotlin/v5/migration/5.0).
33
+
34
+
### HTTP cache
35
+
36
+
You can now use OkHttp [cacheUrlOverride()](https://square.github.io/okhttp/5.x/okhttp/okhttp3/-request/-builder/cache-url-override.html) to cache POST requests.
37
+
38
+
To do so, [configure a cache on your OkHttpClient](https://square.github.io/okhttp/features/caching/) and use `enablePostCaching`:
The existing `apollo-http-cache` artifacts have been deprecated. Moving forward, leveraging the cache of existing clients (OkHttp, Ktor, etc...) is the recommended way to do caching at the HTTP layer.
59
+
60
+
Read more in the [migration guide](https://www.apollographql.com/docs/kotlin/v5/migration/5.0).
61
+
62
+
### AGP9 support
63
+
64
+
The Gradle plugin now works with AGP 9 and the `com.android.kotlin.multiplatform.library` plugin.
65
+
66
+
### `Service.issueSeverity()`
67
+
68
+
You may now control the severity of issues found by the compiler in your Gradle scripts:
69
+
70
+
```kotlin
71
+
service("service") {
72
+
packageName.set("com.example")
73
+
// Do not fail the build on unused fragments
74
+
// Valid values are the names of the subclasses of `com.apollographql.apollo.ast.Issue`
75
+
issueSeverity("UnusedFragment", "warn")
76
+
}
77
+
```
78
+
79
+
## 👷♂️ All changes
80
+
81
+
* NEW: Promote experimental websockets to stable by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6774
82
+
* NEW: Add `@catch` support for responseBased codegen by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6697
83
+
* NEW: Support descriptions on variable definitions by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6699
84
+
* NEW: Support Android Gradle Plugin 9 (AGP9) by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6703
85
+
* NEW: Add `Service.issueSeverity()` by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6731
86
+
* NEW: Add HTTP caching using OkHttp cacheUrlOverride by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6739
87
+
* NEW: Implement `@defer` and `@stream` as of `incremental/v0.2` by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6331
88
+
* NEW: Add `ApolloRequest.Builder.url(String)` by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6758
89
+
* NEW: Add a specific issue type for fragment cycles by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6759
90
+
* NEW: Add `ApolloInterceptor.InsertionPoint` to control where the interceptors are added by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6761
91
+
* NEW: Introduce `RetryStrategy` by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6764
92
+
* FIX: Make `Optional.Absent` a `data object` by @JakeWharton in https://github.com/apollographql/apollo-kotlin/pull/6686
93
+
* FIX: Use regular `if`/`else` to avoid `Int` boxing by @JakeWharton in https://github.com/apollographql/apollo-kotlin/pull/6688
94
+
* FIX: Remove kotlin-node dependency by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6708
95
+
* FIX: Do not check already checked fragments in checkCapitalizedFields by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6718
96
+
* FIX: Pretty-print operation manifest by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6720
97
+
* FIX: Allow empty deprecationReasons by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6729
98
+
* FIX: Fix IndexOutOfBoundsException in keyFields validation by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6748
99
+
* FIX: Allow multiple success responses in ApolloCall.execute() by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6772
100
+
* FIX: Restore JsonReader state if a field throws in-flight by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6775
101
+
* FIX: Exclude auto-imported cache related directives when the Apollo cache plugin is present by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6766
102
+
* FIX: fix a timeout leak in the default HttpEngine by @martinbonnin in https://github.com/apollographql/apollo-kotlin/pull/6762
103
+
* DOCS: add linuxX64 as supported for apollo-runtime by @hrach in https://github.com/apollographql/apollo-kotlin/pull/6689
104
+
* DOCS: Update `@defer` documentation by @calvincestari in https://github.com/apollographql/apollo-kotlin/pull/6751
105
+
* UPDATE: Bump KGP to 2.2.20 by @BoD in https://github.com/apollographql/apollo-kotlin/pull/6716
@@ -165,29 +165,29 @@ Installation instructions and more information can be found [here](/kotlin/testi
165
165
166
166
## Releases
167
167
168
-
The latest version is `5.0.0-alpha.2`.
168
+
The latest version is `5.0.0-alpha.3`.
169
169
170
170
Check the [changelog](https://github.com/apollographql/apollo-kotlin/releases) for the release history.
171
171
172
172
Releases are hosted on [Maven Central](https://repo1.maven.org/maven2/com/apollographql/apollo/). The plugin is additionally hosted on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/com.apollographql.apollo)
173
173
174
174
```kotlin
175
175
plugins {
176
-
id("com.apollographql.apollo") version "5.0.0-alpha.2"
176
+
id("com.apollographql.apollo") version "5.0.0-alpha.3"
0 commit comments