Commit Graph

2474 Commits

Author SHA1 Message Date
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 027cc898e7 Minor, fix warnings in core/ modules 2016-04-17 13:35:17 +03:00
Alexander Udalov 07c229e94b Exclude InlineOnly from kotlin-test
It's already present in kotlin-stdlib and that causes
com.android.dex.DexException

 #KT-11505 Fixed
2016-04-15 11:33:23 +03:00
Ilya Gorbunov a2db8f9090 Performance: move the state out of multifile class parts to avoid synchronization. 2016-04-14 19:03:39 +03: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
Ilya Gorbunov f3f1aa8a15 Change String.subSequence parameter names to match those of CharSequence.subSequence. 2016-04-01 21:39:09 +03:00
Dmitry Petrov d30ab50532 KT-11410: Build stdlib with new part/facade inheritance scheme. 2016-04-01 10:13:22 +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 d5d19f5595 Make Map.plus accept Map out-projected by key type as either operand (receiver or parameter).
#KT-11301 Fixed
2016-03-31 17:20:58 +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 ab68b49a70 Introduce RandomAccess to JS.
Make EmptyList support RandomAccess.
#KT-10794
2016-03-30 21:06:18 +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 cbf8dca28d Add deprecated extension MutableList.remove.
#KT-11648 Fixed
2016-03-29 19:56:03 +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
Ilya Gorbunov 4c113ad882 Prettify dump output format: indent members and enclose them in { }, space before : in supertypes. 2016-03-29 13:50:02 +03:00
Ilya Gorbunov ff0a24a750 Move test output files closer to test data.
Move reference dump out of test directory.
2016-03-29 13:50:01 +03:00
Ilya Gorbunov 2e87a08c8d Ignore kotlin visibilities for classes in effectively public package kotlin.jvm.internal 2016-03-29 13:49:59 +03:00
Ilya Gorbunov ce4b161df4 Find single jar file with binaries in target folders without knowning its version in advance. 2016-03-29 13:49:57 +03:00
Ilya Gorbunov a75093650c Add JvmField and const tests for exposed fields visibility 2016-03-29 13:49:55 +03:00
Ilya Gorbunov 0d12d60e8a Infer lateinit-exposed field effective visibility from its setter visibility. 2016-03-29 13:49:53 +03:00
Ilya Gorbunov f2cb5edf1a Do not consider protected members in final class as public API 2016-03-29 13:49:51 +03:00
Ilya Gorbunov 4e250e4dd1 Refactor data structures 2016-03-29 13:49:49 +03:00
Ilya Gorbunov 10792de4c1 Treat inline-exposed internal API as effectively public.
Comment out unsupported cases.
2016-03-29 13:49:48 +03:00