But still compile stdlib, reflect, kotlin.test and scripting runtimes
with JVM target 1.6 to simplify migration from Kotlin 1.6 to 1.7.
#KT-45165 Fixed
As absolute paths were also revealed in
atomicfu.jar
kotlin-stdlib-wasm
kotlin-test-wasm
Use solution from Alexander Likhachev (avoid accessing
buildDir, projectDir in doFirst()) to prevent breaking the configuration
cache.
Should be removed after fixing KT-50876
KTI-729
'AbstractCompile' task has inputs that are related only to Java
compilation and should not used for Kotlin compile tasks.
'SourceTask' most probably will be deprecated in future Gradle releases
- https://github.com/gradle/gradle/issues/9040. Plus it has
old 'sources' with 'FileTree' type which is not stable
for task inputs snapshotting.
Another breaking change - 'destinationDir' task property is not longer
available. It is replaced by 'destinationDirectory' which uses Gradle
Provider API type.
^KT-32805 In Progress
Some sources for kotlin-stdlib-js-ir are not copied to build dir
and used directly from the project.
Modify kotlin.test/js-ir as well, while there's no evidence of the
problem so far.
Should be removed after KT-50876 fix.
^KTI-730 In Progress
Intentionally use doFirst section to trick gradle and not affect
inputs with absolute path usage.
Old behaviour can be returned by kotlin.build.use.absolute.paths.in.klib
in local.properties
Should be removed after KT-50876 fix.
^KTI-730 In Progress
[JS] Node downloading for js ir integration kotlin test
[JS] Fix API of Promise
[JS IR] Promise symbol as lazy2
[JS] Support legacy compiler aftertest with promises
[JS IR] Generate finally for promised tests
[JS] Setup it tests for JS IR kotlin-test
Merge-request: KT-MR-5168
^KT-49738 fixed
There's a source and javadoc validation in sonatype that
once *-sources.jar or *-javadoc.jar is found expect main
jar must be present as well.
This doesn't work when instead of jar we publish klib.
Changes in Gradle integration tests are needed because:
- in new-mpp-android, kotlin-stdlib-jdk8 is used, and JVM IR generates
JDK 8-specific bytecode (invokedynamic). D8 needs to be configured to
desugar it with source/target versions set to 1.8, otherwise it
reports an error.
- in AndroidExtensionsManyVariants and AndroidIcepickProject, D8 fails
with assertions enabled if AGP < 4.0.0 is used because of
https://issuetracker.google.com/issues/148661132. The tests which use
old AGP versions are probably not relevant anymore anyway.
Changes in kotlin-stdlib-runtime-merged.txt are caused by a slightly
different generation scheme of collection subclasses in JVM IR, and are
harmless.
(Previous attempt was at 15e978dbd311c2ba78ec32b394c21acde9811ccb.)
There seems to be no point in configuring the compiler argument per
project. This argument will be deleted soon anyway, when we remove
support for JDK 1.6 & 1.7.
Also remove `disableDeprecatedJvmTargetWarning`. It didn't have any
effect in all modules where it was applied because these modules
reassign `freeCompilerArgs` anyway, with
`-Xsuppress-deprecated-jvm-target-warning` in it.
These compiler arguments enable features which are enabled by default in
the current Kotlin anyway.
The only exception is in :compiler:cli which uses an old language
version.