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
This release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.
Expose Json exceptions structure
To make working with exceptions easier and providing proper error codes in e.g., REST APIs,
classes JsonException, JsonDecodingException, and JsonEncodingException are now public.
They have relevant public properties, such as shortMessage, path, offset, and others.
This API is currently experimental, and we're going to improve it further in the subsequent releases.
See the linked issues for the details: #1930, #1877.
Ability to hide user input from exception messages for security/privacy reasons.
Historically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.
Such behavior may pose additional challenges for logging, analytics, and other systems, since
a system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.
To address this issue, a new property exceptionsWithDebugInfo is added to JsonConfiguration.
Disable it to hide user input from exception messages.
IMPORTANT: This behavior will be enabled by default when this property becomes stable.
See #2590 for more details.
Bugfixes and improvements
CBOR: Relax value range check when decoding numbers (#3167)
Use a specialized writeDecimalLong method for IO stream integrations in Json (#3152)
Configuration
📅 Schedule: (UTC)
Branch creation
"before 9am on monday"
Automerge
At any time (no schedule defined)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
If you want to rebase/retry this PR, check this box
This PR updates kotlinx-serialization-core from 1.10.0 to 1.11.0. The change itself is a clean single-line version bump in gradle/libs.versions.toml.
Issues Found
Version Mismatch Between Core and JSON (Blocker)
gradle/libs.versions.toml now has two different versions for libraries that are always released together as a single unit:
kotlinxSerializationJson = "1.10.0"# line 6 — NOT updatedkotlinxSerializationCore = "1.11.0"# line 21 — updated by this PR
kotlinx-serialization-json depends on kotlinx-serialization-core at the same version. With json at 1.10.0 and core at 1.11.0, Gradle's dependency resolution will force-upgrade core to 1.11.0 transitively — but the json artifact itself is still compiled against 1.10.0 internals. This is an unsupported configuration and could cause IncompatibleClassChangeError or NoSuchMethodError at runtime if any binary-incompatible changes were made between the two releases.
The project uses kotlinx-serialization-json directly in BugReportDraftStorage.kt:34 for metadata encoding/decoding, so this mismatch affects production code.
Resolution: kotlinxSerializationJson should be bumped to 1.11.0 in the same PR. Fix this →
Kotlin Version Compatibility (Worth Verifying)
The 1.11.0 changelog states it is "based on Kotlin 2.3.20", while this project uses kotlin = "2.2.21". The Kotlin serialization runtime typically maintains backward compatibility, but the compiler plugin (kotlin-serialization plugin, also 2.2.21) generating code for the @Serializable-annotated classes in this project needs to produce bytecode compatible with the 1.11.0 runtime. This is a low-risk concern since the serialization team maintains plugin/runtime compatibility across minor versions, but worth a CI green-light confirmation.
What's Fine
The @Serializable usage across the codebase is straightforward — data classes and sealed interfaces used for navigation routes (NavGraph.kt) and data models. No custom serializers or advanced APIs that would be affected by the new JsonException API additions.
The Json { ignoreUnknownKeys = true } instance in BugReportDraftStorage.kt:80 is unaffected by the new exceptionsWithDebugInfo property (which defaults to true, maintaining existing behavior).
No usages of CBOR (the bugfix in 1.11.0 doesn't apply).
Recommendation
Do not merge as-is. The kotlinxSerializationJson version should be updated to 1.11.0 alongside this change to avoid a version mismatch between tightly-coupled artifacts. These two libraries must always share the same version.
renovateBot
changed the title
fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-serialization-core to v1.11.0
fix(deps): update kotlinxserializationcore to v1.11.0
Jun 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.10.0→1.11.0Release Notes
Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-core)
v1.11.0==================
This release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.
Expose Json exceptions structure
To make working with exceptions easier and providing proper error codes in e.g., REST APIs,
classes
JsonException,JsonDecodingException, andJsonEncodingExceptionare now public.They have relevant public properties, such as
shortMessage,path,offset, and others.This API is currently experimental, and we're going to improve it further in the subsequent releases.
See the linked issues for the details: #1930, #1877.
Ability to hide user input from exception messages for security/privacy reasons.
Historically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.
Such behavior may pose additional challenges for logging, analytics, and other systems, since
a system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.
To address this issue, a new property
exceptionsWithDebugInfois added toJsonConfiguration.Disable it to hide user input from exception messages.
IMPORTANT: This behavior will be enabled by default when this property becomes stable.
See #2590 for more details.
Bugfixes and improvements
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.