Commit Graph

1245 Commits

Author SHA1 Message Date
Nicolay Mitropolsky 2ede37496c 173: Uast: removing kotlinInternalUastUtils.kt.173
no sense to keep difference
2018-06-06 14:05:30 +03:00
Nicolay Mitropolsky 045cc253ab Uast: KotlinUEnumConstant.returnType now is evaluated from containing сlass
to make it not load additional clsDelegates
2018-06-05 18:00:15 +03:00
Alexey Tsvetkov db66bfd726 Pack scripting plugin into kotlin-scripting-embeddable for use in Gradle 2018-06-01 23:13:36 +03:00
Alexey Tsvetkov 873de17056 Resolve compiler plugin classpath using 'kotlinCompilerPluginClasspath' configuration
#KT-24653 fixed
        #KT-24676 fixed
2018-06-01 23:13:36 +03:00
Nicolay Mitropolsky 8e2c9358bc Uast: updates for consistency tests and fixes for missed things
we should use `sourcePsi` instead of `psi` for parents matching, because light `psi` will not be tested, and it is not enough to store only PSI as map key to match parent consistency, because some different UElements could have same sourcePsi.
2018-05-29 13:30:52 +03:00
Ilya Chernikov 6fdb8746de Fixes after review 2018-05-28 22:10:56 +02:00
Ilya Chernikov a46dd5b30e Avoid using reflected types in the scripting API
since it causes numerous classloading issues. Using the wrapping types
and reload them in the proper context when needed.
Note: this version supports only classes, but the wrapping type could
be extended to support other types in the future.
+ numerous fixes related to proper loading and handling of the templates.
2018-05-28 22:10:56 +02:00
Nicolay Mitropolsky eea66bea73 Making LightAnnotation work without clsDelegate (KT-20924, KT-22883) 2018-05-28 17:06:35 +03:00
Dmitry Savvinov da7b59984f Move importsDumper to compiler plugin 2018-05-28 13:02:48 +03:00
Ilya Chernikov 92d848b6e6 Fix scripting plugin commandline processing 2018-05-25 09:51:04 +02:00
Ilya Chernikov 705faa4792 Add lazy discovery test 2018-05-25 09:51:04 +02:00
Natalia Selezneva 30c62bccb2 Refactoring: do not store scriptModuleInfo inside ScriptDependenciesInfo
Cache for ScriptDependenciesInfo.ForFile is dropped because there is a cache for ScriptModuleInfo, so the facade for dependencies shouldn't be created too often
Cache for ScriptDependenciesInfo.ForProject is stored in a field
2018-05-24 08:47:32 +03:00
Yan Zhulanow 015d7f3300 Kapt: Do not retain references to Kotlin compiler classes in customized Javac components
This should fix potential memory leakages.
2018-05-24 01:01:52 +03:00
Yan Zhulanow 99ecedc32e Kapt: Ensure there isn't duplicating entries in the processor loading classpath
(cherry picked from commit 1354a0d)
2018-05-24 01:01:52 +03:00
Yan Zhulanow aa8c266940 Pill: Add kotlin-scripting-gradle and kotlin-gradle-plugin-integration-tests to JPS model (in 'full' variant) 2018-05-24 01:01:52 +03:00
Yan Zhulanow b6d59da8a8 Kapt3: Avoid normal compilation in case if no apClasspath entries are passed (#KT-24538) 2018-05-24 01:01:52 +03:00
Yan Zhulanow 6e362f6734 Kapt: Remove kapt1 from Kotlin compiler 2018-05-24 01:01:51 +03:00
Yan Zhulanow 20cb4e91b3 Do not retain proxy-based components for compiler plugin settings in project model 2018-05-16 17:04:03 +03:00
Vyacheslav Gerasimov a1c551faaf as32: Make use of createIfNecessaryParameter of AndroidModuleInfoProviderImpl.getApplicationResourceDirectories 2018-05-15 22:32:20 +03:00
Yan Zhulanow c439b6d38b Pill: Import common modules as libraries 2018-05-15 16:29:47 +03:00
Ilya Chernikov b3219cb762 Implement lazy script definition and light discovery in cli plugin, ...
update appropriate parts of the scripting infrastructure
2018-05-14 11:13:44 +02:00
Nicolay Mitropolsky 05be8f7536 UastKotlinPsiVariable: hashCode nullability fix (EA-119715) 2018-05-11 12:57:23 +03:00
Vyacheslav Gerasimov c1f5ebb28e as32: Fix usages of AppResourceRepository in AS 3.2 C14 plugin 2018-05-10 23:28:41 +03:00
Vyacheslav Gerasimov 4adc0a94ab as32: Update to 181 platform api 2018-05-10 23:28:41 +03:00
Vyacheslav Gerasimov ab25145458 as32: Restore uast to 181 platform state 2018-05-10 23:28:41 +03:00
Nicolay Mitropolsky cf43be9fa3 UAST: replacing deprecated JvmDeclarationUElement with JvmDeclarationUElementPlaceholder (#KT-23887)
To make it possible to delete `JvmDeclarationUElement` in IDEA-182
2018-05-08 15:21:13 +03:00
Mikhail Zarechenskiy 37a8844050 Update bunch files for kotlinInternalUastUtils
After 5815e790ba and d6405c8147
2018-05-08 12:03:17 +03:00
Vyacheslav Gerasimov e6f64519e4 Build: Copy uast to idea plugin as separate artifacts 2018-05-08 00:24:22 +03:00
Mikhail Glukhikh 54fc846dea Minor: fix parcel test (related to KT-21129) 2018-05-04 18:16:57 +03:00
Ilya Chernikov 516924cda1 Add support for script environment variables to the frontend 2018-05-03 22:15:09 +02:00
Ilya Chernikov 15f9ad9531 Implement quick non-script detection and lazy script discovery..
so ".kt" and ".java" files are not considered as scripts and quickly
filtered out, and for the other files the the checks are implemented
using sequences, mechanisms provided to supply script definitions
lazily, and script discovery is implemented using this mechanisms.
2018-05-03 22:15:09 +02:00
Ilya Chernikov 969340167f Apply scripting plugin in gradle plugin by default 2018-05-03 22:15:09 +02:00
Ilya Chernikov a29411a211 Process script templates everywhere properly:
- add options to disable scripting plugin and standard script definition
- move standard definition adding logic into appropriate place
- fix logic of scripting plugin loading
- add standard script definition on the environment creation to
  ensure compatibility with all usages
- fix testdata
- some minor fixes
2018-05-03 22:15:09 +02:00
Mikhail Zarechenskiy 5815e790ba Minor, use utility to get default type for number type constructor 2018-05-03 11:04:55 +03:00
Mikhail Zarechenskiy d6405c8147 Fix exception on mapping internal types to UAST types with NI
#EA-119071 Fixed
2018-05-03 11:04:54 +03:00
Nikolay Krasko c83ff5e75f Remove files introduced in 181 from 173 branch 2018-04-27 19:45:23 +03:00
Vyacheslav Gerasimov 8c88ac69df Cleanup .181 bunch files 2018-04-27 18:25:21 +03:00
Vyacheslav Gerasimov bc403ce744 Switch to 181 platform 2018-04-27 18:25:17 +03:00
Denis Zharkov 003f381fcd Replace default-type dependencies to :kotlin-stdlib with distJar
Use distJar configuration instead.
It's necessary because currently when using default-type, subproject
starts having a transitive dependency to :kotlin-stdlib-common
and that leads to exception from KT-20897 when building light classes

This change might be reverted once KT-23942 is fixed

 #KT-23942 Submitted
2018-04-26 16:11:27 +03:00
Jim S cebee7b5e1 Add context to generateSynthetic* in SyntheticResolveExtension 2018-04-25 20:18:10 +03:00
Mikaël Peltier 76cd20c574 KT-23721 Emit an error when 'tools.jar' is not into plugin classpath
- Since warnings are discarded when there are others errors, replace the
current warning by an error to always display the message and inform the
user that its annotation processor is badly configured.

Fix of https://youtrack.jetbrains.com/issue/KT-23721
2018-04-24 16:10:03 +03:00
Nicolay Mitropolsky efdc5701d9 Uast: removing SimpleKotlinRenderLogTest.kt.181 2018-04-24 12:35:26 +03:00
Mikhail Glukhikh 3351b00870 SimpleKotlinRenderLogTest: delete identical branch file (AS32) 2018-04-24 10:31:59 +03:00
Mikhail Glukhikh f9858bf597 SimpleKotlinRenderLogTest: add (forgotten) changes into branches 2018-04-24 10:30:10 +03:00
Mikhail Glukhikh 00a9dea7cb KotlinAbstractUElement+KotlinUElementWithComments(172): add imports 2018-04-21 11:04:13 +03:00
Mikhail Glukhikh 5dd7ff4d7f Up KotlinAbstractUElement / UElementWithComments / UVariable in branches 2018-04-20 21:29:55 +03:00
Mikhail Glukhikh 3e1d05f146 Update KotlinUMethod for 172/181/as32 branches 2018-04-20 21:23:05 +03:00
Mikhail Glukhikh a25e971d19 UAST: property delegates consistency #KT-22527 Fixed 2018-04-20 20:39:56 +03:00
Mikhail Glukhikh f179b2ba13 Test for KT-22527 2018-04-20 20:39:54 +03:00
Mikhail Glukhikh 29c16f9561 Improve KotlinUElementWithComments & use it in most KotlinUElements
Related to KT-22135
2018-04-20 20:39:45 +03:00