Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.11.0#444
Open
renovate[bot] wants to merge 1 commit intomasterfrom
Open
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.11.0#444renovate[bot] wants to merge 1 commit intomasterfrom
renovate[bot] wants to merge 1 commit intomasterfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #444 +/- ##
======================================
Coverage 2.59% 2.59%
======================================
Files 53 53
Lines 1503 1503
Branches 226 226
======================================
Hits 39 39
Misses 1461 1461
Partials 3 3 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
738eba8 to
07292c0
Compare
07292c0 to
8b581f8
Compare
8b581f8 to
3116e7c
Compare
3116e7c to
65a7a1a
Compare
65a7a1a to
541742b
Compare
541742b to
372c796
Compare
372c796 to
3e55147
Compare
3e55147 to
a0d5c34
Compare
… v1.11.0 | datasource | package | from | to | | ---------- | ------------------------------------------------ | ----- | ------ | | maven | org.jetbrains.kotlinx:kotlinx-serialization-json | 1.8.1 | 1.11.0 |
a0d5c34 to
1f8cbd5
Compare
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.8.1→1.11.0Release Notes
Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-json)
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
v1.10.0==================
This release is based on Kotlin 2.3.0 and contains all of the changes from 1.10.0-RC.
The only additional change is a fix for ProtoBuf packing of Kotlin unsigned types (#3079).
Big thanks to KosmX for contributing the fix.
Stabilization of APIs
kotlinx-serialization 1.10 and subsequent releases will be focused on stabilization of existing APIs.
The following APIs and configuration options are no longer experimental because they're widely used without any known major issues:
Jsonconfiguration options:decodeEnumsCaseInsensitive,allowTrailingComma,allowComments, andprettyPrintIndent. (#3100)@EncodeDefaultannotation and its modes. (#3106)JsonUnquotedLiteralconstructor function (#2900)JsonPrimitiveconstructor function overloads that accept unsigned types. (#3117)JsonElementwithNothing?overloads. (#3117)Readiness for return value checker
Kotlin 2.3.0 introduces a new feature aimed
at helping you to catch bugs related to the accidentally ignored return value of the function.
kotlinx-serialization 1.10.0-RC code is fully marked for this feature, meaning that you
can get warnings for unused function calls like
Json.encodeToString(...).To get the warnings, the feature has to be enabled in your project as described here.
Polymorphism improvements
Polymorphic serialization received a couple of improvements in this release:
New
subclassesOfSealedutility to automatically register sealed subclasses serializers in polymorphic modules (#2201).Use it in your
SerializersModulewhen configuring a polymorphic hierarchy which contains both abstract and sealed classes.For example, when root of your hierarchy is an
interface, but most of your inheritors aresealedclasses.The new function will register all known sealed subclasses for you, so you don’t need to list them one by one.
This makes writing your
SerializerModules much faster and simpler.Big thanks to Paul de Vrieze for contributing this feature.
Class discriminator conflict check rework (#3105).
If a payload already contains a property with the same name as the configured discriminator (for example,
type),it is called a class discriminator conflict.
To produce a correct output and allow more inputs to be deserialized at the same time, the following changes were made:
JsonNamingStrategytransformations are now detected during serialization as well and will causeSerializationException.It also affects non-polymorphic classes.
ClassDisciminatorMode.ALL_JSON_OBJECTSandSerializersModuleBuilder.polymorphicDefaultSerializerare also detected.Previously, it was possible in the sealed hierarchies alone due to missing assertion. See #1664 for details.
General improvements
.serialNametoMissingFieldExceptionfor clearer diagnostics. (#3114)Automatic-Module-Nameentries for metadata JARs. (#3109)Bugfixes
BIGNUM_NEGATIVEtag name. (#3090)v1.9.0==================
This release updates Kotlin version to 2.2.0, includes several bugfixes and provides serializers for kotlin.time.Instant.
Add kotlin.time.Instant serializers
Instant class was moved from kotlinx-datetime library to Kotlin standard library.
As a result, kotlinx-datetime 0.7.0 no longer has serializers for the Instant class.
To use new kotlin.time.Instant class in your @Serializable classes,
you can use this 1.9.0 kotlinx-serialization version (Kotlin 2.2 is required).
You can choose between default
InstantSerializerwhich uses its string representation,or specify
InstantComponentSerializerthat represents instant as its components.See details in the PR.
Other bugfixes
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ 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.