From 3efe324be422ead21ca44f2f6318e1791c166556 Mon Sep 17 00:00:00 2001 From: Leonid Startsev Date: Fri, 16 Feb 2024 19:58:58 +0100 Subject: [PATCH] Prepare 1.6.3 release, update Kotlin to 1.9.22 (#2571) --- CHANGELOG.md | 27 +++++++++++++++++++++++++++ README.md | 26 +++++++++++++------------- gradle.properties | 6 +++--- integration-test/gradle.properties | 4 ++-- 4 files changed, 45 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ce3d1e05f3..22d392c333 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,30 @@ +1.6.3 / 2024-02-16 +================== + +This release provides a couple of new features and uses Kotlin 1.9.22 as default. + +### Class discriminator output mode + +Class discriminator provides information for serializing and deserializing [polymorphic class hierarchies](docs/polymorphism.md#sealed-classes). +In case you want to encode more or less information for various third party APIs about types in the output, it is possible to control +addition of the class discriminator with the `JsonBuilder.classDiscriminatorMode` property. +For example, `ClassDiscriminatorMode.NONE` does not add class discriminator at all, in case the receiving party is not interested in Kotlin types. +You can learn more about this feature in the documentation and corresponding [PR](https://github.com/Kotlin/kotlinx.serialization/pull/2532). + +### Other features + +* Add kebab-case naming strategy (#2531) (thanks to [Emil Kantis](https://github.com/Kantis)) +* Add value class support to the ProtoBufSchemaGenerator (#2542) (thanks to [Felipe Rotilho](https://github.com/rotilho)) + +### Bugfixes and improvements + +* Fix: Hocon polymorphic serialization in containers (#2151) (thanks to [LichtHund](https://github.com/LichtHund)) +* Actualize lenient mode documentation (#2568) +* Slightly improve error messages thrown from serializer() function (#2533) +* Do not try to coerce input values for properties (#2530) +* Make empty objects and arrays collapsed in pretty print mode (#2506) +* Update Gradle dokka configuration to make sure "source" button is visible in all API docs (#2518, #2524) + 1.6.2 / 2023-11-30 ================== diff --git a/README.md b/README.md index 64c33d1a29..d69420a932 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,8 @@ [![JetBrains official project](https://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub) [![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0) [![TeamCity build](https://img.shields.io/teamcity/http/teamcity.jetbrains.com/s/KotlinTools_KotlinxSerialization_Ko.svg)](https://teamcity.jetbrains.com/viewType.html?buildTypeId=KotlinTools_KotlinxSerialization_Ko&guest=1) -[![Kotlin](https://img.shields.io/badge/kotlin-1.9.21-blue.svg?logo=kotlin)](http://kotlinlang.org) -[![Maven Central](https://img.shields.io/maven-central/v/org.jetbrains.kotlinx/kotlinx-serialization-core/1.6.2)](https://central.sonatype.com/artifact/org.jetbrains.kotlinx/kotlinx-serialization-core/1.6.2) +[![Kotlin](https://img.shields.io/badge/kotlin-1.9.22-blue.svg?logo=kotlin)](http://kotlinlang.org) +[![Maven Central](https://img.shields.io/maven-central/v/org.jetbrains.kotlinx/kotlinx-serialization-core/1.6.3)](https://central.sonatype.com/artifact/org.jetbrains.kotlinx/kotlinx-serialization-core/1.6.3) [![KDoc link](https://img.shields.io/badge/API_reference-KDoc-blue)](https://kotlinlang.org/api/kotlinx.serialization/) [![Slack channel](https://img.shields.io/badge/chat-slack-blue.svg?logo=slack)](https://kotlinlang.slack.com/messages/serialization/) @@ -95,8 +95,8 @@ Kotlin DSL: ```kotlin plugins { - kotlin("jvm") version "1.9.21" // or kotlin("multiplatform") or any other kotlin plugin - kotlin("plugin.serialization") version "1.9.21" + kotlin("jvm") version "1.9.22" // or kotlin("multiplatform") or any other kotlin plugin + kotlin("plugin.serialization") version "1.9.22" } ``` @@ -104,8 +104,8 @@ Groovy DSL: ```gradle plugins { - id 'org.jetbrains.kotlin.multiplatform' version '1.9.21' - id 'org.jetbrains.kotlin.plugin.serialization' version '1.9.21' + id 'org.jetbrains.kotlin.multiplatform' version '1.9.22' + id 'org.jetbrains.kotlin.plugin.serialization' version '1.9.22' } ``` @@ -123,7 +123,7 @@ buildscript { repositories { mavenCentral() } dependencies { - val kotlinVersion = "1.9.21" + val kotlinVersion = "1.9.22" classpath(kotlin("gradle-plugin", version = kotlinVersion)) classpath(kotlin("serialization", version = kotlinVersion)) } @@ -134,7 +134,7 @@ Groovy DSL: ```gradle buildscript { - ext.kotlin_version = '1.9.21' + ext.kotlin_version = '1.9.22' repositories { mavenCentral() } dependencies { @@ -164,7 +164,7 @@ repositories { } dependencies { - implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.2") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3") } ``` @@ -176,11 +176,11 @@ repositories { } dependencies { - implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.2" + implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3" } ``` ->We also provide `kotlinx-serialization-core` artifact that contains all serialization API but does not have bundled serialization format with it +>We also provide `kotlinx-serialization-core` artifact that contains all serialization API but does not have a bundled serialization format with it ### Android @@ -266,8 +266,8 @@ Ensure the proper version of Kotlin and serialization version: ```xml - 1.9.21 - 1.6.2 + 1.9.22 + 1.6.3 ``` diff --git a/gradle.properties b/gradle.properties index 9d63e87724..099a38f63c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,12 +3,12 @@ # group=org.jetbrains.kotlinx -version=1.6.3-SNAPSHOT +version=1.6.4-SNAPSHOT -kotlin.version=1.9.21 +kotlin.version=1.9.22 # This version takes precedence if 'bootstrap' property passed to project -kotlin.version.snapshot=1.9.255-SNAPSHOT +kotlin.version.snapshot=2.0.255-SNAPSHOT # Also set KONAN_LOCAL_DIST environment variable in bootstrap mode to auto-assign konan.home junit_version=4.12 diff --git a/integration-test/gradle.properties b/integration-test/gradle.properties index 059a58e9d8..d29c5df2e5 100644 --- a/integration-test/gradle.properties +++ b/integration-test/gradle.properties @@ -2,8 +2,8 @@ # Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. # -mainKotlinVersion=1.9.21 -mainLibVersion=1.6.3-SNAPSHOT +mainKotlinVersion=1.9.22 +mainLibVersion=1.6.4-SNAPSHOT kotlin.code.style=official kotlin.js.compiler=ir