Releases: Kotlin/kotlinx-rpc
0.10.0
Overview
This release brings a lot of changes, work:
- Kotlin 2.2.20 and 2.2.10 support
- kRPC: Backpressure
To read about the backpressure feature,
see the updated kRPC Configuration page.
Breaking Changes 🔴
Features 🎉
- Kotlin 2.2.20 by @Mr3zee in #478
- Kotlin 2.2.10 by @Mr3zee in #456
- kRPC: Backpressure by @Mr3zee in #462
- Add support for Wasm/Wasi to krpc #465 by @Mr3zee in #480
Bug fixes 🐛
- Add collect once check for client streams by @Mr3zee in #431
- Fix diagnostic rendering for compiler plugins checkers by @Mr3zee in #432
- fix wrong unchecked null cast (potential NPE) by @y9maly in #445
Documentation 📗
- Docs for gRPC with Ktor by @Mr3zee in #394
- Add a doc for KMP source sets with gRPC by @Mr3zee in #405
- Update strict-mode.topic by @BierDav in #440
- Update grpc-configuration.topic by @flockbastian in #450
- Added docs for release by @Mr3zee in #482
- Fix typo in docs grpc-configuration.topic by @sebaslogen in #495
Infra 🚧
- Fix docs yaml and signing tasks by @Mr3zee in #404
- Fix jdk resolution problems on CI by @Mr3zee in #406
- Use compat-patrouille for compatibility settings by @Mr3zee in #438
Other Changes 🧹
- Fix how we create 'publishMavenArtifact' tasks by @Mr3zee in #416
- Update grpc-sample app by @Mr3zee in #425
- Fix LV and signing by @Mr3zee in #424
- Update ktor-all-platforms-app sample to sync service creation by @Mr3zee in #455
- Added Ktor closure tests and Cancellation tests, + minor fixes by @Mr3zee in #479
- Fix flaky tests by @Mr3zee in #481
New Contributors
- @flockbastian made their first contribution in #450
- @y9maly made their first contribution in #445
- @sebaslogen made their first contribution in #495
Full Changelog: 0.9.1...0.10.0
0.9.1
Important fix, not included in any PR
We fixed a problem in 0.8.1
with unresolved Apple and Windows artifacts.
The same problem affected initial 0.9.0
release, that's why we've published 0.9.1
and skipped 0.9.0
.
Bug fixes 🐛
- Support nullable contextual serializers by @yakivy in #392
- Make WS plugin installation for Ktor server more flexible by @Mr3zee in #398
- Make KtorRpcClient inherit KrpcClient by @Mr3zee in #396
Documentation 📗
Infra 🚧
Other Changes 🧹
Full Changelog: 0.8.1...0.9.0
0.8.1
Bug fixes 🐛
- Propagate transport coroutine context by @yakivy in #374
- Fix compiler bugs by @Mr3zee in #382
- kRPC client initialization is not single shot by @Mr3zee in #385
Documentation 📗
Infra 🚧
- Update pages publication and api link by @Mr3zee in #375
- Added artifacts validation by @Mr3zee in #377
Other Changes 🧹
- Ci updates by @Mr3zee in #370
- Updated CSM sources for template generation by @Mr3zee in #372
- Update strict-mode.topic by @BierDav in #380
- Update Ktor to 3.2.1 and samples by @Mr3zee in #383
New Contributors
Full Changelog: 0.8.0...0.8.1
0.8.0
Overview
This release brings a lot of changes, including breaking changes:
- Kotlin 2.2.0 Update
- Decoupling of
kotlinx.serialization
from the core functionality - Simplifying lifetime schema (services lost their
CoroutineScope
) - Irreversible enforcement of the strict mode
These changes significantly reduce the number of footguns and improve the overall usability of the library.
Additionally, the internal structure of kRPC protocol and our compiler plugin reduced its complexity.
That allows us to provide better quality in future releases
(and this also applies to gRPC, even though in this particular release it was not a priority).
For the full list of changes that require migration,
see the Migration Guide.
Docs update
We added three new documentation sections:
Features 🎉
Breaking Changes 🔴
Bug fixes 🐛
- Fix compilation for standalone k2 module by @Mr3zee in #350
- Fix Pupperteer Version by @Mr3zee in #355
Documentation 📗
- Platforms Table and docs by @Mr3zee in #356
- Dokka by @Mr3zee in #357
- Add Changelog.md to Docs by @Mr3zee in #358
- Onboarding by @Mr3zee in #363
Other Changes 🧹
- Advance version to 0.8.0-SNAPSHOT by @Mr3zee in #340
- Update README.md to use non-suspend flows by @brokenhappy in #342
- Fix kotlin master builds by @Mr3zee in #345
- Simplify Gradle Configs by @Mr3zee in #360
New Contributors
- @brokenhappy made their first contribution in #342
Full Changelog: 0.7.0...0.8.0
0.7.0
Announcement
This release enforces ERROR as a default reporting level for APIs that are forbidden by the strict mode.
You can still change the level manually, but in 0.8.0
strict mode will be enforced irreversibly.
What's Changed
Breaking Changes 🔴
Other Changes 🧹
- Update Kotlin to 2.1.21 by @Mr3zee in #337
- Version 0.7.0-SNAPSHOT by @Mr3zee in #325
- Samples: version 0.6.2 by @Mr3zee in #326
- 2.2.0 compiler migration by @Mr3zee in #335
Full Changelog: 0.6.2...0.7.0
0.6.2
0.6.1
0.6.0
Features 🎉
Documentation 📗
Infra 🚧
- Update monitior by @Mr3zee in #282
- Fix build config for for-ide builds by @Mr3zee in #287
- Update build for custom KC versions by @Mr3zee in #293
- Fix kotlin master compilation by @Mr3zee in #306
Other Changes 🧹
- Upgrade Gradle to 8.12.1 by @Mr3zee in #286
- Version 0.6.0-SNAPSHOT by @Mr3zee in #283
- Update leftover sources from jvm-only to kmp by @Mr3zee in #300
- KRPC-129 Move compatibility tests from Toolbox to Kotlin RPC repo by @Mr3zee in #304
- Dependency bump by @Mr3zee in #303
- Better compiler error message for checked annotations by @Mr3zee in #302
Full Changelog: 0.5.1...0.6.0
0.5.1
Features 🎉
Documentation 📗
- Fix typo in README.md by @SebastianAigner in #266
- Added IDE plugin docs by @Mr3zee in #273
Infra 🚧
Other Changes 🧹
- Update README.md by @pambrose in #268
- Added monitor app for deps publication by @Mr3zee in #265
- Fix kotlin master by @Mr3zee in #274
- Fix println tests by @Mr3zee in #277
- Update Python Monitor Dependencies by @renovate in #278
New Contributors
- @SebastianAigner made their first contribution in #266
- @pambrose made their first contribution in #268
Full Changelog: 0.5.0...0.5.1
0.5.0
Features 🎉
- Update Service Descriptors Generation by @Mr3zee in #227
- Kotlin 2.1.0 by @Mr3zee in #244
- Added basic CheckedTypeAnnotation impl with compiler plugin check by @Mr3zee in #240
- Strict mode by @Mr3zee in #243
Breaking Changes 🔴
- Api naming by @Mr3zee in #236
- Update Service Descriptors Generation by @Mr3zee in #227
- Added basic CheckedTypeAnnotation impl with compiler plugin check by @Mr3zee in #240
Deprecations ⚠️
Infra 🚧
- Update the project structure to work with kotlin-master by @Mr3zee in #234
- Fixed version formatting with ENV vars by @Mr3zee in #235
- Fix Kotlin master compilation by @Mr3zee in #245
- Opt-out from annotations type safety analysis by @Mr3zee in #246
Other Changes 🧹
- Added test for non-serializable params by @Mr3zee in #237
- Updated descriptor to use
RpcType
instead ofKType
directly by @Mr3zee in #239
Full Changelog: 0.4.0...0.5.0