diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 820c08bd933..9c7d6852c8d 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -13,7 +13,7 @@ shadow = "8.1.1" # Should be in sync with version in kotlin-native/
spdx = "0.1.0-dev-10"
proguard = "6.2.2"
ktor = "2.3.3"
-kotlinx-metadataJvm = "0.6.2"
+kotlinx-metadataJvm = "0.7.0"
# Forcing gson version because of https://github.com/google/gson/pull/1991
gson = { strictly = "2.8.9" } # should be in sync with version.properties
jetbrains-ideaExt = "1.0.1"
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 97a4b4b3aa9..ba02e11cf26 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -3762,6 +3762,12 @@
+
+
+
+
+
+
@@ -3792,6 +3798,12 @@
+
+
+
+
+
+
@@ -4114,10 +4126,10 @@
-
-
-
-
+
+
+
+
diff --git a/libraries/reflect/build.gradle.kts b/libraries/reflect/build.gradle.kts
index 24b66a90ea6..7834519bf25 100644
--- a/libraries/reflect/build.gradle.kts
+++ b/libraries/reflect/build.gradle.kts
@@ -3,6 +3,7 @@ import com.github.jengelman.gradle.plugins.shadow.transformers.CacheableTransfor
import com.github.jengelman.gradle.plugins.shadow.transformers.Transformer
import com.github.jengelman.gradle.plugins.shadow.transformers.TransformerContext
import kotlinx.metadata.jvm.KotlinModuleMetadata
+import kotlinx.metadata.jvm.UnstableMetadataApi
import org.apache.tools.zip.ZipEntry
import org.apache.tools.zip.ZipOutputStream
import org.gradle.kotlin.dsl.support.serviceOf
@@ -11,7 +12,7 @@ description = "Kotlin Full Reflection Library"
buildscript {
dependencies {
- classpath("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.6.2")
+ classpath("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.7.0")
}
}
@@ -59,6 +60,7 @@ dependencies {
}
@CacheableTransformer
+@OptIn(UnstableMetadataApi::class)
class KotlinModuleShadowTransformer(private val logger: Logger) : Transformer {
@Suppress("ArrayInDataClass")
private data class Entry(val path: String, val bytes: ByteArray)
@@ -76,8 +78,7 @@ class KotlinModuleShadowTransformer(private val logger: Logger) : Transformer {
logger.info("Transforming ${context.path}")
val metadata = KotlinModuleMetadata.read(context.`is`.readBytes())
- ?: error("Not a .kotlin_module file: ${context.path}")
- val module = metadata.toKmModule()
+ val module = metadata.kmModule
val packageParts = module.packageParts.toMap()
module.packageParts.clear()
@@ -91,7 +92,7 @@ class KotlinModuleShadowTransformer(private val logger: Logger) : Transformer {
relocate(fqName) to parts
}.toMap(module.packageParts)
- data += Entry(context.path, KotlinModuleMetadata.write(module).bytes)
+ data += Entry(context.path, KotlinModuleMetadata.write(module))
}
override fun hasTransformedResource(): Boolean = data.isNotEmpty()
diff --git a/libraries/tools/binary-compatibility-validator/build.gradle b/libraries/tools/binary-compatibility-validator/build.gradle
index 48a07dba984..11ac8ddcb61 100644
--- a/libraries/tools/binary-compatibility-validator/build.gradle
+++ b/libraries/tools/binary-compatibility-validator/build.gradle
@@ -7,7 +7,7 @@ configurations {
dependencies {
api("org.jetbrains.kotlinx:binary-compatibility-validator:0.13.0")
- api("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.6.2")
+ api("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.7.0")
testApi project(':kotlin-test:kotlin-test-junit')