5639 Commits

Author SHA1 Message Date
Yahor Berdnikau 2f70478e67 [Gradle] Deprecate kotlinOptions DSL in KotlinCompile DSL
^KT-63419 In Progress
2024-02-28 21:20:18 +00:00
Yahor Berdnikau 433bec3700 [Gradle] Deprecate kotlinOptions DSL in KotlinCompilation
^KT-63419 In Progress
2024-02-28 21:20:18 +00:00
Yahor Berdnikau 2e3a209d0d [Gradle] Fix usages of kotlinOptions in BuildKotlinToolingMetadataTask
Replaced them with compiler options DSL.

^KT-63419 In Progress
2024-02-28 21:20:18 +00:00
Yahor Berdnikau 66a39952ee [Gradle] Fix usages of kotlinOptions in KotlinJsIrTarget
Replaced them with compiler options DSL.

^KT-63419 In Progress
2024-02-28 21:20:18 +00:00
Yahor Berdnikau 0986733f29 [Gradle] Remove unused method
^KT-63419 In Progress
2024-02-28 21:20:18 +00:00
Timofey Solonin 2fda16f526 Add APIs to resolve multiplatform resources in variant publications
^KT-65540
2024-02-28 20:19:08 +00:00
Timofey Solonin b145796e14 Publish multiplatform resources as variants for wasm, js and native targets
^KT-65540
2024-02-28 15:22:58 +00:00
Timofey Solonin a2989a3711 Publish multiplatform resources and assets for Android target
^KT-65540
2024-02-28 10:37:16 +00:00
Timofey Solonin 43a4fd5ddf Add an API for KotlinAndroidTarget to publish assets
^KT-65540
2024-02-28 10:37:16 +00:00
nataliya.valtman 485840731d Remove old build report properties
kotlin.build.report.dir and kotlin.internal.single.build.metrics.file
were deleted

#KT-64380
2024-02-27 21:46:53 +00:00
nataliya.valtman a7f57710e2 Create checker for deprecated gradle properties
#KT-64380 Fixed
2024-02-27 21:46:52 +00:00
Timofey Solonin 370799b4e3 Publish multiplatform resources in for jvm target
^KT-65540
2024-02-27 14:04:51 +00:00
Timofey Solonin 3dd33e5aa7 Add external APIs to publish multiplatform resources in a target
^KT-65540
2024-02-27 14:04:51 +00:00
Artem Daugel-Dauge fff5a412ec [Gradle] Xcode version too high warning
Adds new warning diagnostic that checks that selected Xcode version is not higher than latest tested with the current Kotlin version

^KT-62373 Verification Pending
2024-02-27 13:23:55 +00:00
Alexander.Likhachev 2d161723d5 [Gradle] Regenerate Gradle compiler arguments DSL
^KT-65986 Fixed
2024-02-27 13:07:18 +00:00
Alexander.Likhachev 83a9ac62ea [Gradle] Regenerate Gradle compiler arguments DSL
^KT-65986 In Progress
2024-02-27 13:07:18 +00:00
Timofey Solonin 5ddc7b47ef Add a task to hierarchically assemble multiplatform resources
^KT-65540
2024-02-27 10:27:38 +00:00
Timofey Solonin 74628c0394 Register multiplatform publication extension
^KT-65540
2024-02-27 10:27:38 +00:00
Timofey Solonin ea0c3837a0 Add kotlin.mpp.enableResourcesPublication feature toggle
^KT-65540
2024-02-27 10:27:38 +00:00
Nataliya.Valtman 5885514c3d Add JSON output type for build reports
#KT-65792 Fixed
2024-02-27 08:32:36 +00:00
Anton Lakotka 3ff2bc403c [Gradle] Report warning when there is multiple source roots in compilation
This issue should warn users about possible problems in K2 compiler.
Because in this setup there will be no symbols visibility between
those source set roots as it used to be in K1.
There is an assumption that this case usually appears in the code
generation setup. And users might not experience any problems before.

^KT-64913 Verification Pending
2024-02-27 02:01:25 +00:00
Yahor Berdnikau bdb96dc0db [Gradle] Rename to HasConfigurableKotlinCompilerOptions
Added "Kotlin" to better indicate to what this interface belongs to.

^KT-65196
2024-02-26 19:32:26 +00:00
Andrey Yastrebov 28a305a826 KT-65928 Worker API for Swift Export 2024-02-26 12:44:22 +00:00
Anton Lakotka 3e5afcaaba [Gradle] Setup Consistent metadata dependencies resolution
Configure consistent metadata resolution only for source sets that
participate in metadata compilation. i.e. test or any other extra
compilations should be excluded.

^KT-65954 Verification Pending
^KT-66047 Verification Pending
2024-02-25 20:59:03 +00:00
Anton Lakotka c027ba642f [Gradle] Introduce SourceSetDependenciesResolution dsl for tests
It allows to mock published via gradle libraries to verify
dependency resolution correctness.
2024-02-25 20:59:03 +00:00
Anton Lakotka 46abf63796 [Gradle] Compare resolved components ignoring versions for source sets
Source Set Visibility algorithm relies on the match between metadata
dependencies resolution and platform dependencies resolution. However
there is a chance that they don't match in versions.
i.e. commonMain resolved into 1.0 but jvmMain got 2.0 of the same
library. However this discrepancy is not correct after all. And
both metadata compilations and platform compilations should see the same
set of libraries. This behavior will be fixed in KT-66047

^KT-65954 Verification Pending
2024-02-25 20:59:03 +00:00
Sebastian Sellmair 704379934e [kotlin-tooling-core] Allow nullable extra values
The change is binary compatible, but not source compatible.
Potential clients like Google might need to adapt
a potential `IdeaKotlinExtrasSerializationExtension` implementaiton.

Right now, no such implementation is known
2024-02-23 07:31:32 +00:00
Andrey Yastrebov d76a6d6a9c KT-65741 Add Swift Export KGP tasks 2024-02-22 18:46:01 +00:00
Ilya Goncharov eabd2f0fc7 [Gradle, Wasm] Fix mismatch report message for upgradeLockFile
^KT-65870 fixed
2024-02-22 18:33:46 +00:00
Ilya Goncharov bca785a87c [Gradle, Wasm] Fix copying wasm file to destination dir
^KT-65889 fixed
2024-02-22 14:53:54 +00:00
Artem Daugel-Dauge 7ab691fcef [Gradle] Forbid using embedAndSign together with Pod-dependencies
^KT-64096 Verification Pending
2024-02-21 11:25:31 +00:00
Yahor Berdnikau f5de0f9399 [Gradle] Use BuildFeatures service to get project isolation feature state
^KT-64355 Verification Pending
2024-02-21 10:20:20 +00:00
Yahor Berdnikau e405072419 [Gradle] Use BuildFeatures service to get configuration cache feature state
^KT-64355 In Progress
2024-02-21 10:20:19 +00:00
Yahor Berdnikau 2a195062a8 [Gradle] Add plugin variant for Gradle 8.5
^KT-64355 In Progress
2024-02-21 10:20:19 +00:00
Dmitrii Krasnov f525d03e67 [Gradle] Moved downloading konan dependencies from compiler to Gradle
^KT-65823 Fixed
2024-02-20 15:47:58 +00:00
Ilya Goncharov abb5f55087 [Wasm] Use static import for wasm imports
^KT-65777 fixed
2024-02-19 10:01:10 +00:00
Ilya Goncharov 87fdf8e764 [Gradle, Wasm] Binaryen by default for production main binary
^KT-64553 fixed
2024-02-19 09:06:44 +00:00
Anton Lakotka 7a150cce47 [Gradle] Introduce defaultFragmentName for K2 MPP Structure
It is possible to add source files to task directly. Especially this is
a very popular case for Android integration. Android variants can
contain any number of extra-source files that should be compiled
together with other android-specific sources.
Android specific sources that come from Android source sets already
compiled together as part of "main" fragment (KT-62508).
With this change this logic is extended to any extra sources
that are added directly to the compile task.

^KT-62508 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka 020bb72d2b [Gradle] Associate Android java sources with related Kotlin Source Set
Java sources can be produced by the task or can be configured with
task dependencies. Previously sources were included into task directly
now they are properly configured with Kotlin Android Source Set.

^KT-63753 Verification Pending
^KT-65426 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka b5ed2326e7 [Gradle] Merge Android Source Sets into one K2 Fragment
Android projects has a number of build type/flavor specific source set.
These source sets are included into compilation of multiple variants.
In Android compilation model they should be compiled together and they
should see each-others declarations. With Kotlin MPP plugin applied
these android source sets gets associated with Kotlin Source Sets
counter parts. However in Kotlin Multiplatform Source sets have
a semantics about "expect/actual" refinement and with K2 it also got
stricter and visibility is checked. This is not compatible with Android
compilation model thus the solution is to merge Android Source Sets
into one K2 Fragment.

^KT-62508 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka 0a86f03457 [Gradle] Don't pass -Xfragment-sources for non-mpp compilations
It is unnecessary and confusing.

^KT-65768 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka fabf75f4e2 [Gradle] Pass Android-related sources to KotlinSourceSet instead task
Setting sources through compile task is not compatible with
Multiplatform K2 because for such sources no K2 Fragment relations
will be set and compilation will fail.

^KT-63753 Verification Pending
2024-02-18 16:42:19 +00:00
Nataliya.Valtman 7ad371b215 Fix ConcurrencyModification exception in KotlinBuildStatsBeanService
#KT-65825 Fixed
2024-02-16 11:43:52 +00:00
Yahor Berdnikau d662f72d07 [Gradle] Deprecate KotlinCompilation.compilerOptions
Users quite often confuse that compilerOptions in KotlinCompilation is
actually the same object in the Kotlin compilation task. We want to make
 our API more straightforward and remove this ambiguity by proposing to
 use task compiler options DSL.

^KT-65568 Verification Pending
2024-02-15 18:27:31 +00:00
Yahor Berdnikau 5df05d5797 [Gradle] Deprecate HasCompilerOptions
This DSL is not consistent with other DSL to configuring compiler
options.

^KT-65568 In Progress
2024-02-15 18:27:31 +00:00
Yahor Berdnikau e3b7366b10 [Gradle] Compile Gradle plugins against Gradle API 8.5
^KT-65819 Fixed
2024-02-15 18:04:59 +00:00
Yahor Berdnikau 4971af293c [Gradle] Remove ownModuleName input
^KT-64504 Verification Pending
2024-02-15 15:02:51 +00:00
Filip Dolník a4854cf81f [Gradle] Fix that CInterop commonizer modified project description
KT-65754
2024-02-13 07:38:50 +00:00
Yahor Berdnikau cf1a1693b3 [Gradle] Remove exceptions for warnings-as-errors flag enable
^KT-56904 Fixed
2024-02-12 14:39:33 +00:00
Yahor Berdnikau de40306f8e [Gradle] Fix warnings in KotlinPerformancePlugin
^KT-56904 In Progress
2024-02-12 14:39:33 +00:00