Denis Zharkov
e24e711208
Avoid rebuilds after changes of layouts xml-files
...
This commit makes IC react more granularly on these changes
Precisely, it marks dirty only kt-files that having lookups into
synthetic package built upon a changed layout-file
#KT-21622 Fixed
2017-12-12 16:17:58 +03:00
Denis Zharkov
a079b92ea0
Add property for precise version of Java tracking in Gradle IC
...
The flag name is kotlin.incremental.usePreciseJavaTracking
By default precise version is disabled
#KT-17621 Fixed
2017-12-12 16:17:58 +03:00
Denis Zharkov
a978c6be35
Fix precise Java IC for multi-module projects
...
The problem may happen in case of multi-module projects:
If a Java class was effectively unused in one module (A),
but it's used in kt-files from the dependent module (B) then
we wouldn't track the changes of the class while compiling A
and don't recompile its usages in B.
It happens because now we track only Java classes that were
resolved by out frontend instead of all classes in the module
that would be more correct but it might be rather slow.
The idea is that whenever we see change in an untracked Java file
we start tracking the classes in it and for the first time we mark
all its content as changed.
2017-12-12 16:17:58 +03:00
Yan Zhulanow
ef6be206d0
Kapt: Clear URL cache after changing annotation processor JAR
2017-12-01 22:53:22 +09:00
Sergey Igushkin
bf2e3decaa
Add :kotlin-annotation-processing-gradle:install dependency to Gradle IT
2017-11-30 15:42:42 +03:00
Alexey Andreev
1d48442a5d
Change default output dir in JS DCE Gradle plugin
...
See KT-21328
Compiler removes all files from its output directory.
Due to this reason (and some other reasons) it't not a good idea
to put DCE output to `classes` dir.
Therefore we changed output dir to `$buildDir/kotlin-js-min`.
Additionally, we now allow to customize output dir.
In particular, this fixes issues with webpack in multi-project build +
continuous Gradle build.
2017-11-29 20:08:30 +03:00
Alexey Andreev
5672e1f56e
JS: add DCE devmode. Fix mapping paths in source maps
...
See KT-20210, KT-21307
2017-11-29 20:08:30 +03:00
Alexey Tsvetkov
0077ab59d6
Remove custom cache version checks from Gradle
...
#KT-21009 fixed
Cache version could be changed only when compiler is changed.
@InputFiles on `AbstractKotlinCompileTool#computedCompilerClasspath`
ensures that non incremental build is performed when compiler is changed.
2017-11-24 16:17:13 +03:00
Alexey Tsvetkov
2b708f67ee
Add tests for explicit language/api version change in Gradle
...
Modifying language/api version should cause non-incremental build.
Implicit change (e.g. when versions are not specified, but the compiler
is updated 1.1->1.2) is handled by `AbstractKotlinCompileTool#computedCompilerClasspath`.
Explicit change is handled by `AbstractKotlinCompile#serializedCompilerArguments`.
2017-11-23 14:46:23 +03:00
Alexey Tsvetkov
313cd4f7bc
Turn off IC for multiplatform projects by default
...
Multiplatform IC is enabled when a corresponding platform property is enabled
and 'kotlin.incremental.multiplatform' is set to `true`.
See KT-20840
2017-10-25 01:12:34 +03:00
Alexey Tsvetkov
e83f1b138b
Perform non-IC build when JS lib is changed
2017-10-24 16:28:57 +03:00
Ilya Chernikov
431d47a605
Fix dependencies rewriting and gradle integration tests after applying rewriting
2017-10-16 21:48:36 +02:00
Sergey Igushkin
260244fa09
(minor) Fix bad file content replacement in a test.
2017-10-12 15:14:07 +03:00
Sergey Igushkin
bd75a47a07
Update Android license string for Gradle tests
...
(cherry picked from commit 2697445)
2017-10-12 14:23:32 +03:00
Sergey Igushkin
dff15a3d59
Fix multiplatform projects communication broken if the plugin is loaded
...
more than once in different class loaders.
Issue #KT-20634 Fixed
(cherry picked from commit c65f210)
2017-10-11 20:32:11 +03:00
Sergey Igushkin
17eac133a2
(minor) Make a test running on Gradle 4.0+ check the classes correctly
2017-10-11 02:25:30 +03:00
Sergey Igushkin
205df7b1f3
~ Remove debug port
2017-10-10 19:40:18 +03:00
Sergey Igushkin
8e967c9b6b
Move existing multiplatform tests to separate class; add options test.
2017-10-10 19:40:18 +03:00
Alexey Andreev
9008791a54
JS: generate paths in source maps relative to .map file location
...
See KT-19818
2017-10-06 15:24:25 +03:00
Sergey Igushkin
f4ec8df187
Remove erroneous mavenCentral() from plugins DSL tests
2017-10-05 21:07:46 +03:00
Sergey Igushkin
a2df5c38dd
Remove the Kotlin version suffix from PluginsDslIT.kt
2017-10-05 21:05:06 +03:00
Sergey Igushkin
769759d6ce
Add jcenter() to testProject repositories where needed.
2017-10-05 21:05:06 +03:00
Sergey Igushkin
ad4fc7363e
Install annotation-processor-example for Gradle integration tests.
2017-10-05 21:05:06 +03:00
Ilya Gorbunov
ae28af03d1
Add mavenCentral or jcenter to fetch external dependencies of our gradle plugin and stdlib
2017-10-05 21:05:05 +03:00
Ilya Gorbunov
6a61d22ad3
Correctly setup maven local repository path and kotlin version for gradle integration tests
2017-10-05 21:05:05 +03:00
Sergey Igushkin
7af7696c44
Refactor UpToDatenessIT.kt
...
(cherry picked from commit 878ec8b)
2017-10-05 20:44:55 +03:00
Sergey Igushkin
5f593ac3f8
Add @Input to compiler args and compiler JAR. Add up-to-date-ness tests.
...
Issue #KT-20036 Fixed
Issue #KT-3463 Fixed
Issue #KT-16299 Fixed
Issue #KT-16915 Fixed
(cherry picked from commit e6d867f)
2017-10-05 20:24:01 +03:00
Sergey Igushkin
28567570ea
Changes related to the 'expectedBy' Gradle configuration:
...
* Remove the `extendsFrom` relation;
* Refactor, reword warnings;
* Add the new expectedBy name to `KotlinGradleModelBuilder.kt`.
(cherry picked from commit de198f0)
2017-10-05 15:37:44 +03:00
Sergey Igushkin
ff687131b1
Rename implement to expectedBy in Gradle, deprecate the old name
...
Issue #KT-20618 Fixed
(cherry picked from commit 6e0d378)
2017-10-05 15:37:43 +03:00
Andrey Mischenko
e4fe9be5e7
Merge branch 'master' into KT-18765
2017-10-04 17:43:11 +08:00
Alexey Tsvetkov
72d2e7dd45
Minor: restore accidentally removed import
2017-09-29 21:40:54 +03:00
Alexey Tsvetkov
a8cfe19769
Add option to debug Kotlin daemon in Gradle integration tests
2017-09-29 15:19:36 +03:00
Alexey Tsvetkov
39f49f1449
Ensure dependencies are installed before running Gradle integration tests
2017-09-29 15:19:36 +03:00
Alexey Tsvetkov
62f293280c
Gradle: compile tests incrementally when main is changed
...
#KT-17674 fixed
2017-09-29 05:11:20 +03:00
Andrey Mischenko
4a2ea4de4b
KT-18765 Move incremental compilation message from Gradle's warning to info logging level
2017-09-21 14:30:09 +08:00
Ilya Chernikov
df04efcf14
Rename artifacts, fix dependencies and artifact contents
2017-09-20 11:52:00 +02:00
Ilya Chernikov
776f1c8d19
Do not shade com.intellij in embeddable compiler
2017-09-20 11:51:45 +02:00
Ilya Chernikov
1862c78bdc
Fix projects for gradle integration tests
2017-09-20 11:51:44 +02:00
Ilya Chernikov
b6c255cea5
Refactor: project renaming, using improved build dsl
2017-09-19 21:37:22 +02:00
Ilya Chernikov
96d5e0bb21
Refactoring - renaming projects, applying sourceSets DSL
2017-09-19 21:37:18 +02:00
Ilya Chernikov
438525dfff
Proper import of the gradle part:
...
- using non-shadowed libs
- stop preshgadowing plugins
- switch to project dependencies
- add annotation processing module
2017-09-19 21:37:12 +02:00
Ilya Chernikov
6b22282ad4
Change previous gradle build for compatibility with the centralized build
...
incompatible with the main build yet
2017-09-19 21:37:07 +02:00
Sergey Igushkin
41b13d25f2
Fix javaOutputDir changed to the JAR, which was breaking unit tests
...
internal visibility, because they did not get the JAR into classpath
Issue #KT-20212 Fixed
(cherry picked from commit 19e861b)
2017-09-19 15:33:58 +03:00
Sergey Igushkin
5ce514bd42
Changes to configuration of Kotlin source set
...
* Include the Java source directory set as-is, without iterating over
its srcDirs
* Avoid Java sources duplication with newer Gradle versions.
Issue #KT-16764 Fixed
Issue #KT-17564 Fixed
2017-09-19 15:33:58 +03:00
Stanislav Erokhin
91a99b4726
Migrate impl to actual in libraries projects
2017-09-16 19:47:46 +03:00
Stanislav Erokhin
481cbd0850
Migrate header to expect in libraries projects
2017-09-16 19:47:45 +03:00
Alexey Andreev
c66bc0b0e9
Remap source maps in JS DCE. Improve JS DCE error logging
...
See KT-19821
2017-09-08 18:27:41 +03:00
Yan Zhulanow
c330285fd0
Parcelable: Use innerClassNameFactory to figure out the internal name of the Creator class (KT-19680)
...
KAPT3 class builder mode in 1.1.4 replaces '$' (inner class name separators) with '/' by providing special innerClassNameFactory.
We should use it to be compatible with kapt.
2017-09-06 17:40:18 +03:00
Sergey Igushkin
0e28d612e7
Add a test for the opt-out flag for disabling separate classes directory
...
(cherry picked from commit 393966d)
2017-08-29 14:39:17 +03:00
Alexey Tsvetkov
10feac9402
Remove CacheVersionChangedIT#testExperimentalCacheVersionChanged
...
experimental-format-version.txt was removed recently.
See also 534db2d45b
2017-08-29 04:28:09 +03:00