Commit Graph

6987 Commits

Author SHA1 Message Date
Anton Lakotka f5c05c1a52 [Gradle][KPM] Add kotlinToolingMetadataOfMainModule for tests 2022-03-25 00:04:30 +01:00
Anton Lakotka 1aac53d544 [Gradle] Add BuildKotlinToolingMetadataTest for KPM 2022-03-25 00:04:30 +01:00
Anton Lakotka 2e327f1367 [Kotlin] Add multi-module test for tooling metadata
^KT-49704
2022-03-25 00:04:30 +01:00
Anton Lakotka 7af5a93767 [Gradle][KPM] Create BuiltKotlinMetadata task per KPM Module
Use main module for tests

KT-49704
2022-03-25 00:04:29 +01:00
Anton Lakotka b579bf20cf [Gradle] Fix code review comments
KT-49704
2022-03-25 00:04:29 +01:00
Anton Lakotka a2a414ace4 [Gradle] Include kotlin-tooling-metadata in KPM module publication
KT-49704
2022-03-25 00:04:29 +01:00
Anton Lakotka ac8e7606a2 [Gradle] Map KPM model to Build Tooling Metadata v1.1.0
Update buildKotlinToolingMetadata gradle task

KT-49704
2022-03-25 00:04:25 +01:00
Anton Lakotka 2dc774c1fe Build Tooling Metadata 1.1.0: Add isKPMEnabled flag
Build Tooling Metadata now can carry information whether project
built with Kotlin Project Model or not.

KT-49704
2022-03-25 00:03:04 +01:00
Yahor Berdnikau 5f1977083d Restore "Rename 'classpath' input into 'libraries'"
This reverts commit 47a9fb725e.
2022-03-24 19:02:58 +01:00
Yahor Berdnikau 0d18703c25 Restore "Simplify scripting configurations setup"
This reverts commit 46d3f96f0b.
2022-03-24 19:02:58 +01:00
Yahor Berdnikau db86e7c29d Restore "Add KotlinCompile.androidLayoutResources input"
This reverts commit 69b4b80dff.
2022-03-24 19:02:58 +01:00
Yahor Berdnikau 9a8daf2b5f Restore "Remove sourceFileExtensions input"
This reverts commit 46f44763ac.
2022-03-24 19:02:57 +01:00
Yahor Berdnikau dc0a1df8d4 Restore "AbstractKotlinCompileTool class now also implements PatternFilterable"
This reverts commit d5e5513dfd.
2022-03-24 19:02:57 +01:00
Yahor Berdnikau 4aa6d984fc Restore "Drop tasks inheritance from 'AbstractCompile' and 'SourceTask'"
This reverts commit 2c5d817633.
2022-03-24 19:02:54 +01:00
Yahor Berdnikau 2c5d817633 Revert "Drop tasks inheritance from 'AbstractCompile' and 'SourceTask'"
This reverts commit e9498c8978.
2022-03-23 19:03:32 +01:00
Yahor Berdnikau d5e5513dfd Revert "AbstractKotlinCompileTool class now also implements PatternFilterable"
This reverts commit 0025bf9ed3.
2022-03-23 19:03:17 +01:00
Yahor Berdnikau 46f44763ac Revert "Remove sourceFileExtensions input"
This reverts commit f81e49f210.
2022-03-23 19:02:56 +01:00
Yahor Berdnikau 69b4b80dff Revert "Add KotlinCompile.androidLayoutResources input"
This reverts commit 6ee503f2b2.
2022-03-23 19:02:41 +01:00
Yahor Berdnikau 46d3f96f0b Revert "Simplify scripting configurations setup"
This reverts commit f4078b0940.
2022-03-23 19:02:23 +01:00
Yahor Berdnikau 47a9fb725e Revert "Rename 'classpath' input into 'libraries'"
This reverts commit c7e594fc7f.
2022-03-23 19:01:18 +01:00
Viacheslav Kormushkin cc30d99f6f Remove dependency on the cocoapods-generate plugin
#KT-50622
2022-03-23 11:46:19 +00:00
sebastian.sellmair 310ab12a92 kotlin-gradle-plugin-idea: Replace special -for-compatibility-tests publication
... with separate module intended to download and prepare
the `kotlin-gradle-plugin-idea` classpath used for testing
backwards compatibility.
2022-03-22 18:45:57 +01:00
Yahor Berdnikau c7e594fc7f Rename 'classpath' input into 'libraries'
'classpath' makes sense only in case of Kotlin/Jvm, but not for
Kotlin/Js or Kotlin/Native. 'libraries' is common ground for a name.

For 'KotlinCompile' task 'getClasspath' and 'setClasspath' methods
are left with deprecation note.

^KT-32805 Fixed
2022-03-22 15:29:08 +00:00
Yahor Berdnikau f4078b0940 Simplify scripting configurations setup
Make it more clear what is resolving from what.

^KT-32805 In Progress
2022-03-22 15:29:07 +00:00
Yahor Berdnikau 6ee503f2b2 Add KotlinCompile.androidLayoutResources input
This input is used by 'android-extensions' subplugin to track changed
Android layout resource files.

^KT-32805 In Progress
2022-03-22 15:29:07 +00:00
Yahor Berdnikau f81e49f210 Remove sourceFileExtensions input
This and new KotlinCompile task inputs dedicated for scripting
allowed providing proper Kotlin scripts compilation support without
eager configuration dependencies resolve.

^KT-32805 In Progress
2022-03-22 15:29:06 +00:00
Yahor Berdnikau 0025bf9ed3 AbstractKotlinCompileTool class now also implements PatternFilterable
This allows to drop SourceRoots intermediate container and replace it
with normal Gradle inputs. This inputs will use ant-style
patterns for filtering allowing Gradle to apply better caching
between builds.

KaptTask replaces ConventionTask parent with DefaultTask.

^KT-32805 In Progress.
2022-03-22 15:29:05 +00:00
Yahor Berdnikau e9498c8978 Drop tasks inheritance from 'AbstractCompile' and 'SourceTask'
'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
2022-03-22 15:29:05 +00:00
Yahor Berdnikau f70b477fa7 Add @NativeGradlePluginTests annotation
And related Gradle tasks to run it.

^KT-51553 In Progress
2022-03-22 15:14:51 +00:00
Yahor Berdnikau 10fdc399c4 Remove @SimpleGradlePluginTests annotation
And related Gradle tasks to run it.

^KT-45745 Fixed
2022-03-22 15:14:50 +00:00
Victor Petukhov 25a06bdc56 [Compiler CLI] Make language version description not in capital letters
^KT-51673 Fixed
2022-03-22 13:41:46 +00:00
Alexander Dudinsky fb0819d490 Implement OsCondition test annotation
With this annotation we can configure specific tests for
running on different platforms on TC and locally.
`supportedOn` shows the platform where the test should pass.
`enabledOnCI` configures on which platform test should be run on CI.
2022-03-21 15:35:05 +00:00
sebastian.sellmair a87c2ace29 kotlin-tooling-core: Remove plugin jps-compatible 2022-03-17 16:53:41 +00:00
sebastian.sellmair f540b4bc82 KotlinToolingVersion: Evaluate maturity eagerly 2022-03-17 16:53:40 +00:00
sebastian.sellmair 6800475202 KotlinToolingVersion: Support -release in versions 2022-03-17 16:53:40 +00:00
sebastian.sellmair 87c339f637 [Minor] KotlinMetadataCompilationData: Use LinkedHashMap directly
Previously commonCompilationDataPerFragment and
nativeCompilationDataPerFragment were declared as using
`mutableMapOf`, which will not offer the necessary 'compute' function
in IDE analysis.

KT-51386
2022-03-17 15:39:55 +00:00
sebastian.sellmair 85998f8857 [KPM] Consistently use uppercase factory style for idea model builders
KT-51386
2022-03-17 15:39:55 +00:00
sebastian.sellmair 03cf978b77 [KPM] Consistently seal interfaces in :kotlin-gradle-plugin-idea
KT-51386
2022-03-17 15:39:54 +00:00
sebastian.sellmair 1a0d8f777c [KPM] Remove IdeaKotlinModuleIdentifier in favor of consistent IdeaKotlinFragmentCoordinates
KT-51386
2022-03-17 15:39:54 +00:00
sebastian.sellmair ef3a3d71b9 [KPM] Remove duplicate KotlinGradleFragmentInternal.refinesClosure
KT-51386
2022-03-17 15:39:54 +00:00
sebastian.sellmair e1ead6b8bf [KPM] Integrate refines dependencies into IdeaKotlinSourceDependency
KT-51386
2022-03-17 15:39:53 +00:00
sebastian.sellmair 0f8f61c373 [KPM] Introduce separate IdeaKotlinDependencyCoordinates entity
This splits IdeaKotlinSourceCoordinates from the actual
IdeaKotlinSourceDependency

KT-51386
2022-03-17 15:39:52 +00:00
sebastian.sellmair 588ea65d66 [KPM] Replace .containingModule.variantsContainingFragment with .containingVariants
KT-51386
2022-03-17 15:39:52 +00:00
sebastian.sellmair f65c61472b [KPM] Remove now unused IdeFragmentDependencyResolver
KT-51386
2022-03-17 15:39:51 +00:00
sebastian.sellmair edbf5c5cd8 [KPM] Document IdeaKotlinProjectModelBuilder
KT-51386
2022-03-17 15:39:51 +00:00
sebastian.sellmair cf19261173 [KPM] Document IdeaKotlinPlatformDependencyResolver
KT-51386
2022-03-17 15:39:51 +00:00
sebastian.sellmair e2d61e7f94 [KPM] Document IdeaKotlinDependencyTransformer
KT-51386
2022-03-17 15:39:50 +00:00
sebastian.sellmair fce0145753 [KPM] Document IdeaKotlinDependencyEffect
KT-51386
2022-03-17 15:39:50 +00:00
sebastian.sellmair 882c1186f2 [KPM] Document AbstractLightweightIdeaDependencyResolutionTest
KT-51386
2022-03-17 15:39:49 +00:00
sebastian.sellmair d7ce7387f7 [KPM] Implement SimpleProjectToProjectDependencyResolutionTest
KT-51386
2022-03-17 15:39:49 +00:00