10537 Commits

Author SHA1 Message Date
Alexey Tsvetkov 3340731c71 Read annotations during construction of KotlinAnnotationsProvider
The rationale is to access kotlinClassesInternal and annotatedKotlinElementsInternal
in any order
2016-05-11 20:41:48 +03:00
Alexey Tsvetkov 69a8654e91 Minor: add const 2016-05-11 20:41:48 +03:00
Alexey Tsvetkov 28abc73f22 Pass reader in constructor to KotlinAnnotationProvider 2016-05-11 20:41:48 +03:00
Alexey Tsvetkov e84ae5117d Refactoring: move kapt tests to separate class 2016-05-11 20:41:48 +03:00
Alexey Tsvetkov 93117ed637 Prevent compile tasks from running when nothing changes
#KT-10932 fixed
2016-05-11 20:41:48 +03:00
Alexey Tsvetkov 0bbd2f38dc Minor: use more recent version of gradle in test 2016-05-11 20:41:48 +03:00
Alexey Tsvetkov fe43e1ae79 Minor: do not print output in assertion message 2016-05-11 20:41:48 +03:00
Alexey Tsvetkov 10396ecc84 Refactoring: extract properties for gradle task's properties access in plugin 2016-05-11 20:41:48 +03:00
Ilya Gorbunov 8425304866 Advance snapshot version to 1.1-SNAPSHOT 2016-05-11 17:28:38 +03:00
Ilya Gorbunov d646afabb2 Document functions which return set or map preserving the order of elements/entries.
#KT-11632 Fixed
2016-05-08 03:24:03 +03:00
Ilya Gorbunov 249d08a66e Handle special cases of drop, take, takeLast when it is known in advance that the result is a single-item list. #KT-9990 2016-04-29 22:21:19 +03:00
Ilya Gorbunov a665b2183c Optimize operations to return special collection implementations when result is empty or has single element.
#KT-9990
2016-04-29 22:21:19 +03:00
Ilya Gorbunov 2d12ed68c8 Remove runtime specialization in inline last and lastOrNull to prevent double inlining of predicate body. 2016-04-29 22:21:19 +03:00
Ilya Gorbunov 09c1ff1233 Do not use indexed access for lists not supporting RandomAccess
Add RandomAccess specialization.
2016-04-29 22:21:19 +03:00
Ilya Gorbunov f4f82656f7 Use list iterators instead of indexed access in operations on lists taking a lambda.
Related to #KT-9607
2016-04-29 22:21:19 +03:00
Ilya Gorbunov 409094f0f7 Make stdlib functions dependent on reified is checks available in JS.
#KT-11346 Fixed
2016-04-27 18:22:20 +03:00
Alexey Tsvetkov f2ba83adf2 Minor: slightly increase memory limit for gradle daemon test 2016-04-20 13:44:51 +03:00
Alexey Tsvetkov 23c21396f7 Make Kotlin2JsGradlePluginIT test compatible with gradle 2.x 2016-04-18 22:12:08 +03:00
Alexey Tsvetkov 51104a5c2b Make gradle daemon thread leak test more thorough
Former test made the following assertion:
for any of 3 sequent builds on the same gradle daemon
the difference in used memory between build start and finish
should not exceed 2500 kb.

Current test makes the following assertion:
the difference of used memory after first and last
of 10 sequent builds on the same daemon should not exceed 200 kb.
2016-04-18 21:31:41 +03:00
Alexey Tsvetkov d446e60e70 Remove ThreadTracker from gradle plugin
ThreadTracker was introduced to detect memory leaks
when using gradle daemon. However, it makes
quite strong assumption about build lifecycle:
there should not be any builds started after
kotlin plugin is configured that are alive when
buildFinished callback is called.

This assumption can be broken by some gradle configurations
namely our android tests and gradle 2.13-rc.

Since we already have daemon memory leak test (KotlinGradlePluginIT#testKotlinOnlyDaemonMemory),
after some discussion it was decided to remove ThreadTracker
2016-04-18 21:31:41 +03:00
Ilya Chernikov 6b3a691367 Fix KT-10507 - "missing extension point" with parallel compilation 2016-04-18 15:16:48 +02:00
Alexander Udalov a8629b3836 Do not fail on unknown -X flags
For better compatibility if we add experimental stuff in 1.0.X compilers
2016-04-12 20:03:51 +03:00
Nikolay Krasko 9c43ff281c Remove stopping JobSchedule executor. It now fails on shutdown attempt. 2016-04-05 00:42:08 +03:00
Sergey Mashkov 14ca0f4aac KT-2917 maven archetype for kotlin projects 2016-03-31 23:04:50 +02:00
Ilya Gorbunov f35dc47b4e Optimize snapshot operations to return special collection implementations when result is empty or has single element.
#KT-9990 Fixed
2016-03-31 21:30:59 +03:00
Alexey Tsvetkov 0a5db2fea4 Load kotlin.incremental from local.properties file too 2016-03-31 19:40:51 +03:00
Ilya Gorbunov 0332217b70 Remove implementations of intrinsic array creation functions (arrayOf, primitiveArrayOf)
#KT-11485 Fixed
2016-03-31 17:15:10 +03:00
Ilya Gorbunov 9caa17dc74 Minor: Make internal monitorEnter/monitorExit functions private to remove them from the public API
#KT-11485
2016-03-31 17:15:10 +03:00
Alexey Tsvetkov d6cd46e079 Build non-incrementally when input class-file is changed 2016-03-31 15:08:14 +03:00
Ilya Gorbunov 6ba98f7fe6 Binary compatibility validator: filter out empty facades *after* members are flattened from non-public part superclasses.
Use stable member sort order for members flattened from non-public superclasses, rewrite test to make order matter.
2016-03-30 20:44:44 +03:00
Alexander Udalov ae263dd70c Add KClass.equals/hashCode to public API of Kotlin runtime
See be4b432
2016-03-30 15:01:07 +03:00
Alexey Tsvetkov 71135b9528 Minor: rename property AbstractKotlinCompile.experimentalIncremental->incremental 2016-03-30 04:42:30 +03:00
Alexey Tsvetkov 61814eb23f Test: override build.log in gradle IC tests 2016-03-30 03:40:53 +03:00
Alexey Tsvetkov c1a61b17c7 Test: use one function to find test's build log for jps and gradle 2016-03-30 03:40:53 +03:00
Alexey Tsvetkov 3d8ec118cb Remove class files when building non-incrementally 2016-03-30 03:40:53 +03:00
Alexey Tsvetkov c8b7764576 Add gradle IC version file 2016-03-30 03:40:53 +03:00
Alexey Tsvetkov ede900ca87 Use separate cache directory for each kotlin gradle task 2016-03-30 03:40:53 +03:00
Alexey Tsvetkov 5d2d827772 Test: change log dump format in gradle tests so it could be parsed again 2016-03-30 03:40:53 +03:00
Alexey Tsvetkov b050722249 Test: add android incremental compilation test project 2016-03-30 03:40:52 +03:00
Alexey Tsvetkov bafa9dca48 Test: pass android-build-tools version using project property
The reason is to test the same project with different android-build-tools versions
2016-03-30 03:40:52 +03:00
Alexey Tsvetkov 157c5009f0 Test: download android sdk using sdk-manager-plugin 2016-03-30 03:40:52 +03:00
Alexey Tsvetkov c686c7fb91 Minor: print subprocess output immediately in tests 2016-03-30 03:40:52 +03:00
Alexey Tsvetkov da3897536a Minor: format android gradle test 2016-03-30 03:40:52 +03:00
Alexey Tsvetkov 5d89f1fb0a Minor: remove assertion from test
Asserted task does not exist
2016-03-30 03:40:52 +03:00
Alexey Tsvetkov ae53183d72 Fix java build when kotlin is changed
See SimpleKotlinGradleIT#testSimpleCompile

    #KT-11350 fixed
2016-03-30 03:40:52 +03:00
Alexey Tsvetkov 4e64d46105 Add kotlin.incremental project property to gradle
Allows turning on incremental compilation by passing
'-Pkotlin.incremental=true' in command line
or specifying it in a 'local.properties' file
2016-03-30 03:40:51 +03:00
Alexey Tsvetkov 274b7bb0b0 Test: turn off thread leaks assertion for android gradle tests
ThreadTracker compares active threads before and after compilation.
In test mode if those sets are different, it was throwing an exception.
By some reason that is not obviously linked with kotlin,
the exception was thrown for every android test.

As a temporary solution I added a property 'kotlin.gradle.test.assertThreadLeaks'
that controls this assertion and turned it off for android tests only.
2016-03-30 03:39:44 +03:00
Ilya Gorbunov ce09612804 Write ReadMe about what constitutes the public API and what is an incompatible change 2016-03-29 13:50:08 +03:00
Ilya Gorbunov 8888537137 Reference dump of kotlin-runtime and kotlin-stdlib of 1.0.2-dev
New public implementation methods 'renderLambdaToString' which are called only from the same module.
2016-03-29 13:50:06 +03:00
Ilya Gorbunov 26e905e90e Reference dump of kotlin-runtime and kotlin-stdlib of 1.0.0 and 1.0.1 2016-03-29 13:50:04 +03:00