Commit Graph

3021 Commits

Author SHA1 Message Date
Yan Zhulanow 9b9b36e332 Kapt3: Kapt task should depend on all Java task dependencies 2016-12-28 22:28:34 +03:00
Yan Zhulanow d918015c30 Kapt3: Attach additional compiler plugins to kapt<sourceSetName>Compile task 2016-12-28 22:18:05 +03:00
Yan Zhulanow 3f638b8677 Kapt: Fix kapt3 on Linux (KT-15375) 2016-12-28 22:18:05 +03:00
Yan Zhulanow a4b21f3b08 Android Gradle plugin: Fix compatibility with Android Studio 2.3 (KT-15376) 2016-12-28 22:18:05 +03:00
Alexander Udalov c4f731b987 Write Kotlin-Version to runtime artifacts built with Maven
Add a test that checks that Kotlin-Version and Kotlin-Runtime-Component have
been written to all relevant runtime libraries
2016-12-26 17:46:36 +03:00
Ilya Gorbunov 9619e08c9b Use emptyArray in orEmpty. 2016-12-24 02:03:48 +03:00
Ilya Gorbunov 05dcaccf09 Do not require array extensions being reified to create new array.
#KT-15377
2016-12-24 01:55:33 +03:00
Alexander Udalov 3719a0619d Merge definitions of build-helper-maven-plugin in runtime/pom.xml 2016-12-23 22:30:31 +03:00
Ilya Gorbunov c43e4f6682 Uncomment some assertions for overflow behavior that now can pass in JS 2016-12-23 18:14:32 +03:00
Ilya Gorbunov 6b509892cb Remove manual overflow for JS arithmetic operations 2016-12-23 18:14:32 +03:00
Denis Zharkov d0ba048342 Refine coroutine/suspend functions ABI
- `invoke` method must always start a suspend functions
- For creation of coroutine that has not been started yet, there are
two special internal interfaces `SuspendFunction0`/`SuspendFunction1`
2016-12-22 11:08:42 +03:00
Ilya Chernikov a9e9f36e1c Put native-platform-uberjar.jar into compiler embeddable and remove dependency from the compiler runner 2016-12-22 05:37:13 +03:00
Alexey Tsvetkov 2ba28618ec Remove reference to removed dependency from pom.xml 2016-12-20 20:24:46 +03:00
Ilya Gorbunov 6ee8a23ddd JS: Drop native map get/set intrinsics altogether.
MutableMap.set extension operator is now common among stdlib and stdlib-js.
#KT-2323
2016-12-20 18:00:19 +03:00
Ilya Gorbunov c6a812b11c Fix some API holes in headers 2016-12-20 14:02:01 +03:00
Alexey Tsvetkov 434f33f9e9 Minor: remove default value of retryOnConnectionError parameter 2016-12-19 22:55:28 +03:00
Alexey Tsvetkov 54d0a6b8e4 Minor: fix snapshot version used in kapt test kt15001 2016-12-19 22:55:26 +03:00
Alexey Tsvetkov 69d1ee7b11 Run kapt with daemon 2016-12-19 22:55:26 +03:00
Alexey Tsvetkov 865c6d887c Report messages from kapt using MessageCollector
This allows to print messages when daemon is used.
System out is not copied to daemon client,
because multiple compilations can occur in parallel.
2016-12-19 22:55:25 +03:00
Alexey Tsvetkov b39cefe5d1 Optimize searching for compiler jar 2016-12-19 22:55:25 +03:00
Alexey Tsvetkov de2736489b Unify Gradle and Kotlin daemon cache version checking 2016-12-19 22:55:25 +03:00
Alexey Tsvetkov d5e42e3271 Clear jar cache with daemon 2016-12-19 22:55:24 +03:00
Alexey Tsvetkov 69e8cf6a25 Compile multiplatform projects with daemon 2016-12-19 22:55:24 +03:00
Alexey Tsvetkov d303bdaa0e Minor: add missing import 2016-12-19 22:55:23 +03:00
Alexey Tsvetkov fcf23706c0 Fix gradle subplugin example 2016-12-19 22:55:23 +03:00
Alexey Tsvetkov 8228d5828e Fix multiproject Gradle IC with daemon 2016-12-19 22:55:22 +03:00
Alexey Tsvetkov 51a8f6ee4f Implement server side IC 2016-12-19 22:55:21 +03:00
Alexey Tsvetkov 9654607f42 Refactoring: pass MessageCollector, OutputItemsCollector in CompilerEnvironment 2016-12-19 22:55:20 +03:00
Alexey Tsvetkov 3f91df4c84 Minor: move GradleCompilerEnvironment to separate file 2016-12-19 22:55:20 +03:00
Alexey Tsvetkov c1812d7d92 Move IC tests to compiler
Fixing IC after moving it from Gradle to the compiler in commit f40a3eff20
2016-12-19 22:55:19 +03:00
Alexey Tsvetkov f40a3eff20 Move IC from Gradle to compiler
Reasons for moving:
1. Integration with Kotlin daemon for Gradle.
Gradle bundles Kotlin compiler (kotlin-compiler-embeddable) since Gradle 3.2.
There is no plugin isolation in Gradle, so strange compilation errors/exceptions may happen.
We decided to fix this problem by compiling out-of-process using Kotlin daemon.

Reasons for moving IC to the compiler:
* Better isolation from Gradle process.
* Incremental compilation logic is not scattered across two process and multiple modules.
* Makes it possible to implement standalone CLI IC
2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 377912f42d Replace Gradle logger with ICReporter 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 599f11b431 Refactoring: extract interface AnnotationFileUpdater 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov fdd3bc31f1 Rename: IncReporter->ICReporter 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 4fdca24db4 Remove source annotations removing (not needed with KAPT3) 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 190c038ad8 Minor: log compiler arguments 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov c7c2a93d1f Use daemon when compiling Kotlin to JS 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 25816b2ccf Use ProcessLauncher from native platform for out-of-process compilation 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 5082e8f236 Add a way to customize compiler file in build.gradle 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 75133bdfb9 Implement fallback strategies 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov d636803d2f Run compiler via Kotlin daemon in Gradle plugin 2016-12-19 22:46:12 +03:00
Alexey Tsvetkov 1f21a0ec90 Add compiler daemon client and runner to maven build 2016-12-19 22:46:12 +03:00
Yan Zhulanow 568523b065 Kapt3: Set correct compiler options when the annotation processing classpath is empty (KT-15146). Disable annotation processing in Javac task a bit earlier 2016-12-19 21:18:17 +03:00
Ilya Gorbunov 2209631f1a Add SinceKotlin to new coerceIn method. 2016-12-19 18:36:52 +03:00
Ilya Gorbunov 10f8e70322 Rename ClosedComparableRange to ClosedFloatingPointRange 2016-12-19 18:36:52 +03:00
Ilya Gorbunov 919c77b950 Minor: run configuration for binary compatibility tests, clean build 2016-12-19 18:36:52 +03:00
Alexey Tsvetkov 9fc3d0838e Fix references from test to main in Gradle JS plugin with default output file 2016-12-17 21:46:13 +03:00
Alexey Tsvetkov b14a0d543f Add references from test to main in multiplatform test project 2016-12-17 21:32:36 +03:00
Alexey Tsvetkov 6974cdf167 Avoid adding common sources to platform source set
If common sources are added to a platform source set,
then IDE sees common src dir as a source root in a platform project,
which is incorrect.
2016-12-17 21:32:32 +03:00
Alexey Tsvetkov c6586f2ac8 Fix mapping kotlin properties in JS plugin 2016-12-17 21:32:28 +03:00