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
Valentin Kipyatkov
b551886889
Code cleanup: removed redundant semicolons
2016-04-29 11:26:25 +03:00
Ilya Gorbunov
ae2e3f1811
kotlin-test: add assertFails overload with message.
2016-04-27 18:22:20 +03:00
Ilya Gorbunov
4b533b297e
reified assertFailsWith available in kotlin-test for JS
...
#KT-11346
2016-04-27 18:22:20 +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
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