Commit Graph

8936 Commits

Author SHA1 Message Date
Yahor Berdnikau eb4e96a113 Add kotlin-build-tools-enum-compat workaround
It acts as a workaround for the case when build tools or dependencies
are compiled with latest 'kotlin-stdlib' version, but at a runtime older
 'kotlin-stdlib' is provided, which does not know about new
 `EnumEntries`.

 ^KT-57317 Fixed
2023-04-21 14:57:17 +00:00
Roman Golyshev d4cffb8a5a [213] Switch to 213 platform
KTI-1114
2023-04-21 13:19:04 +00:00
Aleksei.Cherepanov 803a11003f [Maven] Filter duplicated source roots to avoid multiple module declarations exception
After fixing of KT-13995 (99de93bb) there is a case when several maven plugins register the same source roots twice, which leads to the Kotlin compiler exception "Too many source module declarations found". kotlin-maven-plugin should take care of what it passes to the Kotlin compiler to avoid it

#KT-58048 Fixed

Merge-request: KT-MR-9716
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com>
2023-04-21 12:07:30 +00:00
Ilya Chernikov 5f6d8c9030 Fix maven script executor after changes in the jdk path processing
#KT-58101 fixed
2023-04-21 09:40:19 +00:00
Anton Lakotka 877c1b1742 [Gradle] Clean up ConfigurationCacheIT tests 2023-04-21 06:41:45 +00:00
Anton Lakotka 40d29d13bf [Gradle] Don't use project in gradle task's input properties
With Gradle 8.1 it is now unsupported with Configuration Cache

^KT-58062 Verification Pending
^KT-58063 Verification Pending
2023-04-21 06:41:45 +00:00
Anton Lakotka ab82027f86 [Gradle] Test that multiplatform tasks can work with Gradle 8.1 GCC
^KT-58062
^KT-58063
2023-04-21 06:41:45 +00:00
Dmitry Savvinov da073c9cc3 [mpp] Warn about using pre-HMPP dependencies
^KT-58086 Fixed
2023-04-20 15:35:05 +00:00
Dmitrii Krasnov aea7f4b6d2 migrated NativeEmbeddableCompilerJarIT to junit 5 and gradle TestKit
#KT-51553


Co-authored-by: Alexander Likhachev <me@alikhachev.com>

Merge-request: KT-MR-9579
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com>
2023-04-20 11:10:30 +00:00
Aleksei.Cherepanov df8132b844 Revert "[Maven] Filter duplicated source roots to avoid multiple module declarations exception"
This reverts commit 07d20c6ee1.
2023-04-20 13:00:19 +02:00
Aleksei.Cherepanov 07d20c6ee1 [Maven] Filter duplicated source roots to avoid multiple module declarations exception
After fixing of KT-13995 (99de93bb) there is a case when several maven plugins register the same source roots twice, which leads to the Kotlin compiler exception "Too many source module declarations found". kotlin-maven-plugin should take care of what it passes to the Kotlin compiler to avoid it

#KT-58048 Fixed

Merge-request: KT-MR-9663
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com>
2023-04-20 10:14:32 +00:00
Dmitrii Krasnov c3bfe72394 migrated CInteropIdeaSyncIT to junit5 and gradle TestKit
#KT-51553

Co-authored-by: Alexander Likhachev <me@alikhachev.com>

Merge-request: KT-MR-9599
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com>
2023-04-20 09:48:20 +00:00
Pavel Mikhailovskii 58143a2006 KT-57598 Run Kapt with K1 even when the compiler is run with K2 2023-04-20 09:30:38 +00:00
Dmitriy Novozhilov cb4c41a5ca [Gradle IT] Pass gradle version directly to tests in K2KotlinxSerializationIT 2023-04-20 09:27:08 +00:00
Dmitriy Novozhilov 37e4a05878 [FIR] Serialize generated classes into Klib metadata
^KT-57781 Fixed
2023-04-20 09:27:08 +00:00
Dmitriy Novozhilov fb1cdf643b [FIR] Load kotlin.arrayOf function in IrBuiltInsOverFir from Fir
^KT-57690 Fixed
^KT-57807 Fixed
2023-04-20 09:27:07 +00:00
Abduqodiri Qurbonzoda b25f3be81b [K/N] Experimental Char code point constants and functions
Internalize WASM Char code point functions.

As a part of efforts to stabilize Native stdlib.
2023-04-19 20:33:33 +00:00
Leonid Startsev f29e505bd3 Use correct check in FirSerializationPluginClassChecker to determine if the given type is a enum class.
Otherwise, findTypeSerializerOrContextUnchecked works incorrectly when analyzing code
compiled with Kotlin 1.7.20 and serialization 1.4.1.

#KT-57704 Fixed
2023-04-19 16:13:28 +00:00
Dmitry Savvinov a3db0f14af [mpp] Minor: fix broken link to docs
^KT-57144 Fixed
2023-04-19 14:02:36 +00:00
Sebastian Sellmair ed2b817409 [Gradle] KotlinNativeCompile: Only add -Xfragment{x} arguments for platform compilations
Shared Native compilations shall only use -Xcommon-sources
w/o setting any of the -Xfragment arguments in K2

^KT-57944 Verification Pending
2023-04-19 11:20:57 +00:00
Sebastian Sellmair 6c271eb24a [Gradle] Implement MppSharedNativeCompileIT for KT-57944
... covering shared native compilation for a simple Gradle project
2023-04-19 11:20:56 +00:00
Sebastian Sellmair 3b96ab195f [Gradle] Implement KotlinNativeCompileArgumentsTest for KT-57944
... covering K2 shared native compilations + sources
... covering K2 platform compilations + sources
2023-04-19 11:20:56 +00:00
Ilya Gorbunov 36cb94c158 Update Dokka to 1.8.20-dev-213 2023-04-19 10:28:07 +00:00
Ilya Goncharov bf757d3163 [Gradle, JS] Support custom attributes for public package json configuration
^KT-57985 fixed
^KT-57817 fixed
2023-04-19 09:50:19 +00:00
Alexander.Likhachev ec4fab57a7 [Build] Add the kotlin- prefix to the build tools API modules names
KT-57396
2023-04-19 09:09:26 +00:00
Dmitriy Dolovov cd9924dafe [PL] Disable PL for GradleIT that check linkage error messages 2023-04-18 19:11:13 +00:00
Zalim Bashorov 4f76827ea9 [Wasm] Tune Binaryen options and add some notes about 112 2023-04-18 20:40:17 +02:00
Alexander.Likhachev 1e0eccba35 [Gradle] Move KGP configurations name declaration, make them all internal 2023-04-18 18:19:25 +00:00
Alexander.Likhachev 0727ee5a4f [Gradle] Use custom classloader and ServiceLoader to load bt-api implementation
#KT-57397 Fixed
2023-04-18 18:19:25 +00:00
Alexander.Likhachev 5699cf6784 [Gradle] Add ClassLoadersCachingBuildService
#KT-57397 In Progress
2023-04-18 18:19:25 +00:00
Alexander.Likhachev bb635d1bdb [Gradle] Add useCompilerVersion to Kotlin extension
It allows to override default Kotlin compiler version that is used to run compilation via the build tools api
#KT-57397 In Progress
2023-04-18 18:19:24 +00:00
Alexander.Likhachev 3b69a4c770 [Gradle] Add GradleBuildToolsApiCompilerRunner
It could be enabled via the `kotlin.compiler.runViaBuildToolsApi` Gradle property globally or the `AbstractKotlinCompileTool.runViaBuildToolsApi` task property for a particular task
#KT-57397 In Progress
2023-04-18 18:19:24 +00:00
Nataliya.Valtman 3ab057b5e8 Fix BuildFusStatisticsIT flaky test 2023-04-18 17:55:36 +00:00
Yahor Berdnikau b3decace6b Add KotlinApiPlugin in Gradle plugin variants
This plugin should apply specific implementations for variant Gradle
version including project isolation one.

^KT-55624 Fixed
2023-04-18 15:21:43 +00:00
Yahor Berdnikau cc1aaf4ba8 Add api compatible way to get if project isolation is enabled
Gradle 8.0 internal API has changed returned type. To fix incorrect KGP
behaviour has to add additional Gradle 8.0 plugin variant and provide
project isolation start parameter accessor implementation for older
Gradle versions.

^KT-55624 In Progress
2023-04-18 15:21:43 +00:00
Yahor Berdnikau 19b0ffd85c Bump Gradle API to 8.0
^KT-55624 Fixed
2023-04-18 15:21:43 +00:00
Yahor Berdnikau 8d02a415b2 Remove 'classifier' method usages in tests
^KT-55624 In Progress
2023-04-18 15:21:42 +00:00
Yahor Berdnikau 7f4c65fe10 Update AGP versions in tests
^KT-55624 In Progress
2023-04-18 15:21:42 +00:00
Yahor Berdnikau 7216a8bd95 Update Gradle versions in tests
^KT-55624 In Progress
2023-04-18 15:21:42 +00:00
Svyatoslav Scherbina f559533545 Bump Kotlin/Native version to 1.9.0-dev-5836
Also, fix KGP IT for linkage error messages:
the message text in the presence of compiler caches was changed because
of ab89203, and this commit effectively reverts expected message changes
made in ebaa09a.
2023-04-18 14:57:38 +00:00
Stanislav Erokhin f06087d5d3 [gradle] Deprecate kotlin-js plugin in favor of kotlin-multiplatform
#KT-57901 Verification Pending
2023-04-18 14:27:21 +00:00
Ilya Goncharov e4b6f3c12a [Gradle, JS] Not filter jar files in friendDependencies
^KT-56690 fixed
2023-04-18 14:25:54 +00:00
Ilya Goncharov 418132c240 [Gradle, JS] Fix destinations of js and wasm dists
^KT-57629 fixed
2023-04-18 13:34:00 +00:00
Dmitriy Dolovov d9cd293eaa [PL][JS] Disable PL for Kotlin2JsIrBeIncrementalCompilationIT.testRebuildAfterError
This test is not supposed to be ever successful with enabled PL.
2023-04-18 09:22:53 +00:00
Sebastian Sellmair 5d0bf2de24 [CLI] Restore K2JVMCompilerArguments.classpath and javaModulePath
to support IDEs < 2023.2

Reverts:
- 9dcd40d7b7
- fb66764c4d

KTIJ-25227
2023-04-18 09:18:10 +00:00
Sebastian Sellmair 0f5f4fd8fa [Gradle] Overwrite setupCompilerArgs methods in compile tasks...
... to ensure compatibility with reflection code
in IDEs < 2023.2 which is looking for setupCompilerArgs methods
with specific compiler arguments type instead of a
generic function

KTIJ-25227
2023-04-18 09:18:10 +00:00
Sebastian Sellmair 9309a864ce [Gradle] IdeCompilerArgumentsResolver: Do not resolve compile tasks DependencyClasspath
as it is not needed for JPS builds.
JPS will build the classpath by reading the IJ project model.
Classpath entries added as freeCompilerArgs will still be forwarded

KTIJ-25227
2023-04-18 09:18:09 +00:00
Sebastian Sellmair 62df30134f [Gradle][Minor] CompilerArgumentAware: Remove unnecessary suppress 2023-04-18 09:18:09 +00:00
Yahor Berdnikau 1eb27f2aac Update publishing and usage of kotlin-annotation-processing plugin
- removed 'kotlin-annotation-processing-gradle' publication as it
duplicated 'kotlin-annotation-processing-embeddable'
- removed 'kotlin-annotation-processing-maven' as it is embedded into
  'kotlin-maven-plugin'. Instead 'kotlin-maven-plugin' now depends on
  'kotlin-annotation-processing' directly.

^KT-52811 In Progress
2023-04-17 14:40:51 +00:00
Yahor Berdnikau a58d6fd13a Publish 'kotlinx-serialization-compiler-plugin' separately
- Also publish 'kotlinx-serialization-compiler-plugin-embeddable' to be
used with 'kotlin-compiler-embeddable'.
- Now Serialization Maven and Gradle plugins do not embed plugin into
itself, but declare on published one normal dependency.
- 'kotlin-serialization-unshaded' publication is deprecated.

^KT-52811 In Progress
2023-04-17 14:40:50 +00:00