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: docs/source/migration/5.0.mdx
+5-11Lines changed: 5 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,16 +4,12 @@ subtitle: Step-by-step guide on migrating from Apollo Kotlin 4
4
4
description: Learn how to migrate from version 4 with key changes, new features, and tools designed for improved stability and maintainability. Follow step-by-step guidance and make a seamless transition
5
5
---
6
6
7
-
Apollo Kotlin 5 is mostly binary compatible with Apollo Kotlin 4 with a few exceptions:
7
+
Apollo Kotlin 5 is an incremental evolution of Apollo Kotlin 4 and keeps the same package name.
8
8
9
-
- Symbols that were `DeprecationLevel.ERROR` in v4 are now removed.
10
-
-`apollo-compiler` has breaking changes and is generally still considered unstable with the exception of persisted queries compiler plugins:
11
-
-`ApolloCompilerPlugin.beforeCompilationStep()`, `ApolloCompilerRegistry.registerOperationIdsGenerator()` and dependent symbols are stable and will go through the usual deprecation cycle if they ever need to change.
12
-
- The APIs used by the data builders generated sources (`buildData`, `ObjectBuilder`, `CustomScalarAdapters.PASSTHROUGH`...) have changed. This is not an issue unless you called those APIs directly or distributed data builders code in a library. In that last case, your consumers will have to update to Apollo Kotlin 5.
13
-
- A few symbols were not supposed to be exposed and have been hidden:
In most cases, bumping the version should be transparent. The exceptions are:
10
+
11
+
- Symbols that were `DeprecationLevel.ERROR` in v4 are now removed. Remove all your deprecated usages before migrating to v5.
12
+
-`apollo-compiler` is still considered experimental. You will need to update your [Apollo Compiler Plugins](https://www.apollographql.com/docs/kotlin/advanced/compiler-plugins).
17
13
18
14
We tried hard to minimize the impact of the binary changes so that running code compiled for v4 will run with v5. But the occasional incompatibility may happen. In that case, the incompatible libraries will need to compile against v5 and make a new release.
19
15
@@ -35,7 +31,6 @@ plugins {
35
31
}
36
32
```
37
33
38
-
39
34
## Removed `Service.operationOutputGenerator` and `Service.operationIdGenerator`
40
35
41
36
While running your `OperationOutputGenerator` directly in your build script classpath was convenient, it required the compiler code to run completely in the global buildscript classpath. This created numerous issues such as incompatible dependencies and/or unneeded build invalidations.
@@ -62,7 +57,6 @@ class MyPlugin : ApolloCompilerPlugin {
62
57
Read more in the [persisted queries](https://www.apollographql.com/docs/kotlin/v5/advanced/persisted-queries) and [compiler plugins](https://www.apollographql.com/docs/kotlin/v5/advanced/compiler-plugins) pages.
63
58
64
59
65
-
66
60
## Removed ApolloIdlingResource
67
61
68
62
Apollo Kotlin 5 removes `ApolloIdlingResource`. `IdlingResource` usage has been slowly decreasing and there are now better alternatives to do your testing.
0 commit comments