Jeffrey van Gogh
a9c8fd903b
reduce calls to Object.hashCode originating from LabelNormailizationMethodTransformer
...
Building on the work in #2403 , shaves 1% of compilation time on kotlinx.serialization
by using SmartIdentityTable instead of hashMap in LabelNormailizationMethodTransformer.
Metrics on the prior hashMap use in this code:
| What | Count |
| --------- | ----- |
| instances | 21530 |
| min | 0 |
| max | 174 |
| mean | 4 |
| stddev | 8.24 |
| median | 4 |
| 90p | 8 |
| 95p | 15 |
2019-07-03 19:25:57 +02:00
Alexander Udalov
361c468c33
IR: move type utilities from IrTypeUtils.kt to irTypePredicates.kt
...
Multiple IrType extensions were incorrectly calling isNameInPackage
which actually checked if the name of the type's classifier _starts_
with the given string, not equals it. Move them to irTypePredicates,
which seems a more natural place for these extensions anyway. Move
isKClassArray to JVM backend utilities, since this is JVM-specific
behavior at the moment. Fix minor warnings/inspections
2019-07-03 19:10:03 +02:00
Alexey Tsvetkov
7c6f48df39
Revert "Set sourceCompatibility and targetCompatibility for JavaCompile tasks"
...
This reverts commit 290aded9
2019-07-03 12:47:36 +03:00
Alexey Tsvetkov
2a3bb2968e
Revert "Call configureJvmProject once per project in afterEvaluate"
...
This reverts commit 33de71f7
2019-07-03 12:47:23 +03:00
Alexey Tsvetkov
ab6174defd
Revert "Check JDK env vars once during configuration when not syncing"
...
This reverts commit 48b86bba
2019-07-03 12:47:10 +03:00
Alexey Tsvetkov
aa7aff84fc
Revert "Do not fork java compile tasks when current JDK can be used"
...
This reverts commit f2021b58
2019-07-03 12:46:50 +03:00
Alexey Tsvetkov
9340bffd02
Revert "Add ext.jvmTarget and ext.javaHome to core:descriptors.runtime"
...
This reverts commit 35dea296fa .
2019-07-03 12:40:02 +03:00
Andrey Uskov
1a290621b0
Minor. Update multiplatform kotlin plugin version in HMPP tests
2019-07-03 11:49:04 +03:00
Andrey Uskov
e079615cdf
Add possibility to edit target platform for non-HMPP projects in order to keep ability to edit target platform for IDEA-based projects
2019-07-02 22:46:48 +03:00
Andrey Uskov
efb0e692ae
Minor. Reformat KotlinFacetEditorGeneralTab
2019-07-02 22:46:47 +03:00
Andrey Uskov
9fc60be9d8
Fix serialization of facet settings in order to read properly
...
settings of native platforms
2019-07-02 22:46:47 +03:00
Andrey Uskov
404ce1a8c1
Facet serialization changed in order to keep compatibility with previous
...
versions of Kotlin plugin
2019-07-02 22:46:46 +03:00
Andrey Uskov
87e75bd4cc
HMPP: fix importing target platforms for case when JVM targets are involved
2019-07-02 22:46:45 +03:00
Andrey Uskov
8445e3a2a4
HMPP: add importing tests
2019-07-02 22:46:45 +03:00
Andrey Uskov
8280c647af
HMPP: Migration of source root types for middle HMPP source sets fixed
2019-07-02 22:41:49 +03:00
Andrey Uskov
90187c959e
Add test for 'isHMPP' flag
2019-07-02 22:41:02 +03:00
Andrey Uskov
e791b9d3f7
HMPP: import flag indicating that the project uses HMPP feature
2019-07-02 22:40:19 +03:00
Alexey Tsvetkov
35dea296fa
Add ext.jvmTarget and ext.javaHome to core:descriptors.runtime
...
After the following changes:
* 290aded94f
* 33de71f792
default values of jvmTarget and javaHome started to overwrite properties
set through compileJava in core:descriptors.runtime
2019-07-02 17:37:59 +03:00
Vyacheslav Gerasimov
d3f9d0866a
Build: Improve cache redirector usage in buildSrc settings.gradle
2019-07-02 17:30:06 +03:00
Nikolay Krasko
8b05d4df46
More NoClassDefFoundError fixes in tests after 192 update
2019-07-02 16:45:42 +03:00
Ilya Matveev
ba64600ee5
Gradle: Make K/N properties uniform with other Kotlin properties
...
Names of project properties used by K/N (e.g.
org.jetbrains.kotlin.native.home) are not uniform
with other kotlin properties (e.g. kotlin.coroutines).
This patch renames these properties by dropping the
'org.jetbrains' prefix and adds corresponding
deprecation warnings.
Issue #KT-32302 Fixed
2019-07-02 19:46:50 +07:00
Ilya Matveev
fd1fc7d28a
Gradle: Support K/N restricted distribution
...
Restricted distribution is a K/N distribution built for MacOS only
alongside with a regular distribution and containing no platform
libraries for MacOS. This commit allows switching between
distribution types using a special project property.
Issue #KT-32301 Fixed
2019-07-02 19:46:49 +07:00
Ilya Matveev
35d7fff035
Gradle: Fix input annotation for the Webpack task
2019-07-02 19:46:48 +07:00
Alexey Tsvetkov
f2021b580e
Do not fork java compile tasks when current JDK can be used
...
I see the following improvements:
* `clean dist --parallel` is ~10% faster (from 3:40 to 3:20)
* incremental `dist --parallel` is ~50% faster
(adding public method to org.jetbrains.kotlin.utils.SmartList)
2019-07-02 15:18:19 +03:00
Alexey Tsvetkov
48b86bba69
Check JDK env vars once during configuration when not syncing
...
Previous code (callback in `beforeTask`) was added to allow
opening project without setting up all env. variables.
This change simplifies the code and avoids a callback,
while keeping the ability to open the project without
setting up all variables by checking `kotlinBuildProperties.isInIdeaSync`
2019-07-02 15:18:19 +03:00
Alexey Tsvetkov
33de71f792
Call configureJvmProject once per project in afterEvaluate
...
Calling it twice does not seem to make sense now
2019-07-02 15:18:19 +03:00
Alexey Tsvetkov
290aded94f
Set sourceCompatibility and targetCompatibility for JavaCompile tasks
...
Currently running build with JAVA_HOME pointing to
any JDK != 1.8 results in errors like
#KT-30382 Fixed
2019-07-02 15:18:19 +03:00
Anton Bannykh
f8035096ea
JS: lock tape version to avoid kotlin.test + tape integration test failure
2019-07-02 15:14:07 +03:00
Mikhail Zarechenskiy
60ac2056bd
Update diagnostic message in test data
...
Follow-up of 42a5c488 : function `unCapture` is used to render
diagnostic messages, therefore we have this change now
2019-07-02 14:02:07 +03:00
Nikolay Krasko
a67c3ef855
Update 183 branch to 183.6156.11
2019-07-02 14:00:26 +03:00
Nikolay Krasko
2d85d18a74
Minor: add more exceptions to project dictionary
2019-07-02 14:00:25 +03:00
Nikolay Krasko
28a45909a0
Fix compatibility with 192 branch (KT-32364)
2019-07-02 14:00:24 +03:00
Nikolay Krasko
ba2ca5ae3c
Fallback to simple oocb when per-language trackers are disabled (KT-32364)
2019-07-02 14:00:11 +03:00
Nikolay Krasko
f605d4e73b
Revise per module out-of-code-block (KT-32364)
2019-07-02 13:59:35 +03:00
Nikolay Krasko
73eea6f4b6
Minor: rename file before refactoring
2019-07-02 13:59:21 +03:00
Nikolay Krasko
4f678c8289
Create project service with Kotlin trackers (KT-32364)
2019-07-02 13:59:19 +03:00
Nikolay Krasko
263d8eea16
Use Kotlin oocb instead of platform oocb tracker (KT-32364)
2019-07-02 13:59:06 +03:00
Nikolay Krasko
557ea54a9f
Introduce Kotlin specific out-of-code-block tracker (KT-32364)
2019-07-02 13:59:04 +03:00
Nikolay Krasko
12bb1a5bd1
Make invalidateOnOOCB explicit in ResolverForProjectImpl and remove usage in tests
2019-07-02 13:45:35 +03:00
Nikolay Krasko
b32b362810
Extract KotlinModuleModificationTracker to separate file
2019-07-02 13:45:35 +03:00
Nikolay Krasko
26c7eddb03
Move trackers to caches.trackers package
2019-07-02 13:45:35 +03:00
Nikolay Krasko
2ddcd9f0af
Minor: cleanup and reformat KotlinCodeBlockModificationListener.kt
2019-07-02 13:45:35 +03:00
Vladimir Dolzhenko
2029d16062
Add add-imports performance tests
...
Add missed auto generated perf tests
2019-07-02 09:58:04 +03:00
Dmitry Gridin
57a732c247
Minor: fixes after review
2019-07-02 11:54:38 +07:00
Dmitry Gridin
9316f45a5c
Optimize Imports: improve tooltip information
...
#KT-21374 Fixed
2019-07-02 11:54:38 +07:00
Dmitry Gridin
074829bcea
Import: IDE should import class from root package
...
#KT-21422 Fixed
2019-07-02 11:54:38 +07:00
Dmitry Gridin
148eed2a12
ShortenReferences: fix false negative for object call chain
...
#KT-32320 Fixed
2019-07-02 11:54:38 +07:00
Dmitry Gridin
33914a3a94
ImportMemberIntention: make more flexible based on caret position
...
#KT-31924 Fixed
2019-07-02 11:54:38 +07:00
Dmitriy Dolovov
6f2f60869c
Minor: Don't create unnecessary PluginId instances
...
(to avoid PluginId cache pollution)
2019-07-02 10:49:43 +07:00
Anton Bannykh
208c8f9339
JS: fix bootstrap
2019-07-01 20:22:05 +03:00