diff --git a/buildSrc/src/main/kotlin/common-configuration.gradle.kts b/buildSrc/src/main/kotlin/common-configuration.gradle.kts index 090d0292fa4..678555f7b17 100644 --- a/buildSrc/src/main/kotlin/common-configuration.gradle.kts +++ b/buildSrc/src/main/kotlin/common-configuration.gradle.kts @@ -141,6 +141,7 @@ fun Project.configureKotlinCompilationOptions() { val jvmCompilerArgs = listOf( "-Xno-optimized-callable-references", "-Xno-kotlin-nothing-value-exception", + // Should this suppression be removed ? "-Xsuppress-deprecated-jvm-target-warning" // Remove as soon as there are no modules for JDK 1.6 & 1.7 ) @@ -200,6 +201,7 @@ fun Project.configureKotlinCompilationOptions() { } } +// Should the workaround be removed ? // Still compile stdlib, reflect, kotlin.test and scripting runtimes // with JVM target 1.6 to simplify migration from Kotlin 1.6 to 1.7. fun Project.applyFixForStdlib16() { diff --git a/compiler/compiler.version/build.gradle.kts b/compiler/compiler.version/build.gradle.kts index 5190d587f62..9a1c85818a6 100644 --- a/compiler/compiler.version/build.gradle.kts +++ b/compiler/compiler.version/build.gradle.kts @@ -7,7 +7,7 @@ plugins { // This module does not apply Kotlin plugin, so we are setting toolchain via // java extension -configureJavaOnlyToolchain(JdkMajorVersion.JDK_1_6) +configureJavaOnlyToolchain(JdkMajorVersion.JDK_1_8) val kotlinVersion: String by rootProject.extra diff --git a/compiler/tests-common-jvm6/build.gradle.kts b/compiler/tests-common-jvm6/build.gradle.kts index a52c4b35c61..9a0ea5db9e0 100644 --- a/compiler/tests-common-jvm6/build.gradle.kts +++ b/compiler/tests-common-jvm6/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.updateJvmTarget("1.6") +project.updateJvmTarget("1.6") // Should this project be removed altogether ? dependencies { api(kotlinStdlib()) diff --git a/compiler/tests-different-jdk/build.gradle.kts b/compiler/tests-different-jdk/build.gradle.kts index 5008bc475e7..9a4ddb9a5e5 100644 --- a/compiler/tests-different-jdk/build.gradle.kts +++ b/compiler/tests-different-jdk/build.gradle.kts @@ -50,6 +50,7 @@ fun Project.codegenTest( group = "verification" } +// Should the tests with target = 6 be removed ? codegenTest( target = 6, jdk = JdkMajorVersion.JDK_1_8, diff --git a/core/compiler.common.jvm/build.gradle.kts b/core/compiler.common.jvm/build.gradle.kts index a87c74b4449..636b5c3c31b 100644 --- a/core/compiler.common.jvm/build.gradle.kts +++ b/core/compiler.common.jvm/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:compiler.common")) diff --git a/core/compiler.common/build.gradle.kts b/core/compiler.common/build.gradle.kts index e8022e8d91b..5d4b174dd01 100644 --- a/core/compiler.common/build.gradle.kts +++ b/core/compiler.common/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:util.runtime")) diff --git a/core/descriptors.jvm/build.gradle.kts b/core/descriptors.jvm/build.gradle.kts index 8e2767dbf1d..4d4008568a2 100644 --- a/core/descriptors.jvm/build.gradle.kts +++ b/core/descriptors.jvm/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":kotlin-annotations-jvm")) diff --git a/core/descriptors.runtime/build.gradle.kts b/core/descriptors.runtime/build.gradle.kts index be41d14766d..f2ef005968f 100644 --- a/core/descriptors.runtime/build.gradle.kts +++ b/core/descriptors.runtime/build.gradle.kts @@ -5,17 +5,7 @@ plugins { id("jps-compatible") } -tasks - .matching { it.name == "compileKotlin" && it is KotlinCompile } - .configureEach { - (this as KotlinCompile).configureTaskToolchain(chooseJdk18ForJpsBuild(JdkMajorVersion.JDK_1_6)) - } - -tasks - .matching { it.name == "compileJava" && it is JavaCompile } - .configureEach { - (this as JavaCompile).configureTaskToolchain(chooseJdk18ForJpsBuild(JdkMajorVersion.JDK_1_6)) - } +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { compileOnly(project(":core:util.runtime")) diff --git a/core/descriptors/build.gradle.kts b/core/descriptors/build.gradle.kts index c39470e3d59..f0a5140f0c7 100644 --- a/core/descriptors/build.gradle.kts +++ b/core/descriptors/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:compiler.common")) diff --git a/core/deserialization.common.jvm/build.gradle.kts b/core/deserialization.common.jvm/build.gradle.kts index 70bfe2d567b..b028bc4d89e 100644 --- a/core/deserialization.common.jvm/build.gradle.kts +++ b/core/deserialization.common.jvm/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:metadata.jvm")) diff --git a/core/deserialization.common/build.gradle.kts b/core/deserialization.common/build.gradle.kts index ccbc08528a1..86e27b87ccc 100644 --- a/core/deserialization.common/build.gradle.kts +++ b/core/deserialization.common/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:compiler.common")) diff --git a/core/deserialization/build.gradle.kts b/core/deserialization/build.gradle.kts index 6340eb559f7..536a9f8a43d 100644 --- a/core/deserialization/build.gradle.kts +++ b/core/deserialization/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:metadata")) diff --git a/core/metadata.jvm/build.gradle.kts b/core/metadata.jvm/build.gradle.kts index 42d6971504c..ab6c337a5bc 100644 --- a/core/metadata.jvm/build.gradle.kts +++ b/core/metadata.jvm/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(project(":core:metadata")) diff --git a/core/metadata/build.gradle.kts b/core/metadata/build.gradle.kts index 2c057f87691..73d090c151b 100644 --- a/core/metadata/build.gradle.kts +++ b/core/metadata/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { api(protobufLite()) diff --git a/core/util.runtime/build.gradle.kts b/core/util.runtime/build.gradle.kts index 6f234688663..75d285f5606 100644 --- a/core/util.runtime/build.gradle.kts +++ b/core/util.runtime/build.gradle.kts @@ -3,7 +3,7 @@ plugins { id("jps-compatible") } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) dependencies { compileOnly(kotlinStdlib()) diff --git a/libraries/kotlin.test/annotations-common/build.gradle b/libraries/kotlin.test/annotations-common/build.gradle index e026b854d08..f51ab470c70 100644 --- a/libraries/kotlin.test/annotations-common/build.gradle +++ b/libraries/kotlin.test/annotations-common/build.gradle @@ -2,7 +2,7 @@ description = 'Kotlin Test Annotations Common' apply plugin: 'kotlin-platform-common' -JvmToolchain.updateJvmTarget(project, "1.6") +JvmToolchain.updateJvmTarget(project, "1.8") dependencies { api kotlinStdlib("common") diff --git a/libraries/kotlin.test/common/build.gradle b/libraries/kotlin.test/common/build.gradle index 75a4e84bed5..8fb9190a6a6 100644 --- a/libraries/kotlin.test/common/build.gradle +++ b/libraries/kotlin.test/common/build.gradle @@ -2,7 +2,7 @@ description = 'Kotlin Test Common' apply plugin: 'kotlin-platform-common' -JvmToolchain.updateJvmTarget(project, "1.6") +JvmToolchain.updateJvmTarget(project, "1.8") dependencies { api kotlinStdlib("common") diff --git a/libraries/kotlin.test/junit/build.gradle b/libraries/kotlin.test/junit/build.gradle index 76d00f39d1e..196a910f078 100644 --- a/libraries/kotlin.test/junit/build.gradle +++ b/libraries/kotlin.test/junit/build.gradle @@ -2,7 +2,7 @@ description = 'Kotlin Test JUnit' apply plugin: 'kotlin-platform-jvm' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_6) +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) def includeJava9 = BuildPropertiesExtKt.getIncludeJava9(project.kotlinBuildProperties) diff --git a/libraries/kotlin.test/jvm/build.gradle b/libraries/kotlin.test/jvm/build.gradle index c5cd642a77a..540b2bc6018 100644 --- a/libraries/kotlin.test/jvm/build.gradle +++ b/libraries/kotlin.test/jvm/build.gradle @@ -4,7 +4,7 @@ apply plugin: 'kotlin-platform-jvm' archivesBaseName = 'kotlin-test' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_6) +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) def includeJava9 = BuildPropertiesExtKt.getIncludeJava9(project.kotlinBuildProperties) diff --git a/libraries/kotlin.test/testng/build.gradle b/libraries/kotlin.test/testng/build.gradle index 2a69163372b..9c54abb44a9 100644 --- a/libraries/kotlin.test/testng/build.gradle +++ b/libraries/kotlin.test/testng/build.gradle @@ -2,8 +2,7 @@ description = 'Kotlin Test TestNG' apply plugin: 'kotlin-platform-jvm' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_7) -JvmToolchain.updateJvmTarget(project, "1.6") +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) def includeJava9 = BuildPropertiesExtKt.getIncludeJava9(project.kotlinBuildProperties) diff --git a/libraries/stdlib/common/build.gradle b/libraries/stdlib/common/build.gradle index 2788527f799..2fa7afed159 100644 --- a/libraries/stdlib/common/build.gradle +++ b/libraries/stdlib/common/build.gradle @@ -4,7 +4,7 @@ apply plugin: 'kotlin-platform-common' configurePublishing(project) -JvmToolchain.updateJvmTarget(project, "1.6") +JvmToolchain.updateJvmTarget(project, "1.8") def commonSrcDir = "../src" def commonTestSrcDir = "../test" diff --git a/libraries/stdlib/jdk7/build.gradle b/libraries/stdlib/jdk7/build.gradle index e7ada5854ab..82cdc11d1fb 100644 --- a/libraries/stdlib/jdk7/build.gradle +++ b/libraries/stdlib/jdk7/build.gradle @@ -2,8 +2,7 @@ description = 'Kotlin Standard Library JDK 7 extension' apply plugin: 'kotlin' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_7) -JvmToolchain.updateJvmTarget(project, "1.6") +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) configurePublishing(project) configureSourcesJar() diff --git a/libraries/stdlib/jvm-minimal-for-test/build.gradle.kts b/libraries/stdlib/jvm-minimal-for-test/build.gradle.kts index c5e7fe35cdb..1b3b1895fa6 100644 --- a/libraries/stdlib/jvm-minimal-for-test/build.gradle.kts +++ b/libraries/stdlib/jvm-minimal-for-test/build.gradle.kts @@ -7,7 +7,7 @@ plugins { `maven-publish` } -project.configureJvmToolchain(JdkMajorVersion.JDK_1_6) +project.configureJvmToolchain(JdkMajorVersion.JDK_1_8) val builtins by configurations.creating { isCanBeResolved = true diff --git a/libraries/stdlib/jvm/build.gradle b/libraries/stdlib/jvm/build.gradle index 037d0c1ac82..2446f9b7a50 100644 --- a/libraries/stdlib/jvm/build.gradle +++ b/libraries/stdlib/jvm/build.gradle @@ -4,7 +4,7 @@ apply plugin: 'kotlin-platform-jvm' archivesBaseName = 'kotlin-stdlib' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_6) +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) configurePublishing(project) configureJavadocJar() diff --git a/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt b/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt index 88b625fedef..4bf5a8982b7 100644 --- a/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt +++ b/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt @@ -321,6 +321,7 @@ public final class kotlin/UByteArray : java/util/Collection, kotlin/jvm/internal public static fun iterator-impl ([B)Ljava/util/Iterator; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeIf (Ljava/util/function/Predicate;)Z public fun retainAll (Ljava/util/Collection;)Z public static final fun set-VurrAj0 ([BIB)V public synthetic fun size ()I @@ -380,6 +381,7 @@ public final class kotlin/UIntArray : java/util/Collection, kotlin/jvm/internal/ public static fun iterator-impl ([I)Ljava/util/Iterator; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeIf (Ljava/util/function/Predicate;)Z public fun retainAll (Ljava/util/Collection;)Z public static final fun set-VXSXFK8 ([III)V public synthetic fun size ()I @@ -439,6 +441,7 @@ public final class kotlin/ULongArray : java/util/Collection, kotlin/jvm/internal public static fun iterator-impl ([J)Ljava/util/Iterator; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeIf (Ljava/util/function/Predicate;)Z public fun retainAll (Ljava/util/Collection;)Z public static final fun set-k8EXiF4 ([JIJ)V public synthetic fun size ()I @@ -498,6 +501,7 @@ public final class kotlin/UShortArray : java/util/Collection, kotlin/jvm/interna public static fun iterator-impl ([S)Ljava/util/Iterator; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeIf (Ljava/util/function/Predicate;)Z public fun retainAll (Ljava/util/Collection;)Z public static final fun set-01HTLdE ([SIS)V public synthetic fun size ()I @@ -598,6 +602,7 @@ public abstract class kotlin/collections/AbstractCollection : java/util/Collecti public abstract fun iterator ()Ljava/util/Iterator; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeIf (Ljava/util/function/Predicate;)Z public fun retainAll (Ljava/util/Collection;)Z public final fun size ()I public fun toArray ()[Ljava/lang/Object; @@ -629,13 +634,18 @@ public abstract class kotlin/collections/AbstractList : kotlin/collections/Abstr public fun listIterator ()Ljava/util/ListIterator; public fun listIterator (I)Ljava/util/ListIterator; public fun remove (I)Ljava/lang/Object; + public fun replaceAll (Ljava/util/function/UnaryOperator;)V public fun set (ILjava/lang/Object;)Ljava/lang/Object; + public fun sort (Ljava/util/Comparator;)V public fun subList (II)Ljava/util/List; } public abstract class kotlin/collections/AbstractMap : java/util/Map, kotlin/jvm/internal/markers/KMappedMarker { protected fun ()V public fun clear ()V + public fun compute (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; + public fun computeIfAbsent (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object; + public fun computeIfPresent (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; public fun containsKey (Ljava/lang/Object;)Z public fun containsValue (Ljava/lang/Object;)Z public final fun entrySet ()Ljava/util/Set; @@ -648,9 +658,15 @@ public abstract class kotlin/collections/AbstractMap : java/util/Map, kotlin/jvm public fun hashCode ()I public fun isEmpty ()Z public final fun keySet ()Ljava/util/Set; + public fun merge (Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; public fun put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; public fun putAll (Ljava/util/Map;)V + public fun putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; public fun remove (Ljava/lang/Object;)Ljava/lang/Object; + public fun remove (Ljava/lang/Object;Ljava/lang/Object;)Z + public fun replace (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; + public fun replace (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z + public fun replaceAll (Ljava/util/function/BiFunction;)V public final fun size ()I public fun toString ()Ljava/lang/String; public final fun values ()Ljava/util/Collection; diff --git a/libraries/tools/kotlin-annotations-jvm/build.gradle b/libraries/tools/kotlin-annotations-jvm/build.gradle index 7b09125614b..41394344a9c 100644 --- a/libraries/tools/kotlin-annotations-jvm/build.gradle +++ b/libraries/tools/kotlin-annotations-jvm/build.gradle @@ -2,7 +2,7 @@ description = 'Kotlin annotations for JVM' apply plugin: 'kotlin' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_6) +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) configurePublishing(project) diff --git a/libraries/tools/mutability-annotations-compat/build.gradle.kts b/libraries/tools/mutability-annotations-compat/build.gradle.kts index deb86330a72..c9f05fab53d 100644 --- a/libraries/tools/mutability-annotations-compat/build.gradle.kts +++ b/libraries/tools/mutability-annotations-compat/build.gradle.kts @@ -5,7 +5,7 @@ plugins { id("jps-compatible") } -project.updateJvmTarget("1.6") +project.updateJvmTarget("1.8") sourceSets { "main" { projectDefault() } diff --git a/libraries/tools/script-runtime/build.gradle b/libraries/tools/script-runtime/build.gradle index f05d7629e00..e4df8fde8ac 100644 --- a/libraries/tools/script-runtime/build.gradle +++ b/libraries/tools/script-runtime/build.gradle @@ -2,7 +2,7 @@ description 'Kotlin Script Runtime' apply plugin: 'kotlin' -JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_6) +JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8) configurePublishing(project)