Ilya Chernikov
904917c194
Make script definition a property bag directly
2018-08-23 09:51:53 +03:00
Ilya Chernikov
8953bba47c
Pass scripting (host) environment independently from properties/configuration
2018-08-23 09:51:53 +03:00
Ilya Chernikov
a54675abe7
Clean and fix new scripting API
2018-08-23 09:51:53 +03:00
Natalia Selezneva
b7bdb43219
Fix leaked thread for AbstractScriptConfigurationTest
2018-08-10 15:26:07 +03:00
Denis Zharkov
bf1f94c185
Rewrite DelegatingDataFlowInfo using immutable collections from javaslang
...
It may be useful because data-flow info is mostly the same for
neighbouring expressions and changes between them should be minor.
Thus, it should help to avoid making copies of huge maps and reusing
them instead
2018-08-10 15:40:50 +07:00
Mikhail Glukhikh
db787c78d6
Implement members: don't add 'actual' modifier for fake overrides
...
#KT-25044 Fixed
2018-08-09 12:59:58 +03:00
Mikhail Glukhikh
90245659ff
Fix testOptionalParameterAndLambdaComplex (related to KT-24694)
2018-08-06 19:04:05 +03:00
Mikhail Glukhikh
07ff2bff33
Reformat & cleanup: psiModificationUtils, especially PsiElement.replaced
2018-08-06 19:04:04 +03:00
Ilya Chernikov
a3d719785c
Drop exception/stacktrace from logging warning if a script template is not found in the classpath
...
reducing clutter in logs and console
#KT-24754 fixed
2018-08-06 13:58:49 +02:00
Nikolay Krasko
759ffafb0a
Render flexible types with enhancement as enhanced in IDE (KT-25622)
...
Main targets for the fix is completion, parameters info, inlay hints and
override/implement.
Other IDE functions might be affected.
#KT-24911 Fixed
#KT-25616 Fixed
#KT-25622 Fixed
2018-08-03 16:00:09 +03:00
Natalia Selezneva
41dc059da9
Register custom file extension for scripts loaded from script template
2018-08-03 15:25:35 +03:00
Natalia Selezneva
f71269009a
Refactoring: use KtScript.scriptDefinition instead of KotlinScriptDefinitionProvider.findScriptDefinition if possible
2018-08-03 15:25:35 +03:00
Natalia Selezneva
736361e345
Provide a default scriptDefinition for script
2018-08-03 15:25:35 +03:00
Vyacheslav Gerasimov
53b1a8bd37
Remove hacks introduced for 172 platform compatibility
2018-08-02 19:32:18 +03:00
Vyacheslav Gerasimov
a2bf417d75
Remove 172 bunchset
2018-08-02 19:32:18 +03:00
Sergey Rostov
4f3f4dd025
ScriptDependenciesLoader: Fix calling notifyRootsChanged in write-unsafe context (EA-123239)
2018-08-02 08:38:17 +03:00
Sergey Rostov
adcabd2a5a
Kotlin Scripting IDE performance: cache file attributes in memory.
...
This saves ~2 secs on file highlighting pass.
2018-07-25 14:42:35 +03:00
Toshiaki Kameyama
3e207fd6b2
Move lambda out: don't apply to multiple/default functional parameters
...
So #KT-24694 Fixed
2018-07-23 18:21:37 +03:00
Alexander Podkhalyuzin
04fd4ef9de
Do not stop recursive visitor with return
...
#KT-23627 Fixed
2018-07-09 15:19:38 +03:00
Alexander Podkhalyuzin
571fda0f45
Fixed deprecation of ConcurrentFactoryMap()
...
#KT-24892 Fixed
2018-07-06 17:20:46 +03:00
Alexander Udalov
959c2f4843
Get rid of split packages in descriptors, descriptors.jvm, deserialization
...
Also move some other files to related packages and reformat moved files
2018-07-06 14:08:35 +02:00
Natalia Selezneva
4b1ce15619
Run script dependencies update on editor focus change
...
^KT-24588 Fixed
2018-07-06 11:58:35 +03:00
Ilya Chernikov
1fbece9e7d
Clean scripting plugin options and classpath on importing from gradle
...
should prevent problems that may appear if JPS will try to load
gradle scripting subplugin
(cherrypicked with update from 1.2.50)
2018-06-25 08:06:20 +02:00
Nikolay Krasko
341e7746a2
Minor: deprecated canBeOverriden -> canBeOverridden
2018-06-22 19:19:13 +03:00
Yan Zhulanow
4aa7a95055
Android Extensions: Explicitly check if the Android plugin is enabled (EA-104651)
...
AndroidGradleOrderEnumerationHandler is defined in gradle.xml that doesn't depend on the Android plugin.
So we need to additionally check if the Android plugin is installed/enabled.
2018-06-22 17:48:13 +03:00
Alexey Sedunov
694997651a
Override/Implement: Fix processing of unresolved types
...
#KT-17350 Fixed
2018-06-19 12:22:40 +03:00
Alexey Sedunov
ed8b4b761a
Override/Implement: Add 'actual' modifier to overrides of 'expect'
...
#KT-23106 Fixed
2018-06-19 12:22:40 +03:00
Alexey Sedunov
5f87e84966
Override/Implement: Do not insert super-call into extension body
...
Such super-calls are not are supported yet
#KT-4311 Fixed
2018-06-19 12:22:39 +03:00
Natalia Selezneva
ccacf1bd23
Replace SLRUMap with ConcurrentHashMap
...
^KT-24645 Fixed
2018-06-05 08:41:17 +03:00
Natalia Selezneva
4767757991
Change the message in the 'new script dependencies' notification
2018-06-05 08:41:17 +03: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
Natalia Selezneva
75ad78460f
Setting for auto-reloading script dependencies isn't loaded from xml on project reopening
2018-05-24 15:07:37 +03:00
Natalia Selezneva
ab743ef759
Scripts: fix NPE during script dependencies update
...
^KT-24527 Fixed
2018-05-24 08:47:32 +03:00
Natalia Selezneva
f0a7642e1d
Optimize ScriptDependenciesUpdater to find scriptDefinition only for files with KotlinFileType
2018-05-24 08:47:32 +03:00
Natalia Selezneva
bb04998159
Scripts: remove loaders when any result was received
...
^KT-24470 Fixed
2018-05-24 08:47:32 +03:00
Alexey Sedunov
9fa26c83b6
Configuration: Introduce special source roots for non-JVM Kotlin modules
...
#KT-5948 Fixed
#KT-23672 Fixed
2018-05-18 12:09:40 +03:00
Natalia Selezneva
71703636bc
Optimization: do not load dependencies for scripts not under expected location
2018-05-11 15:51:37 +03:00
Natalia Selezneva
61c31ce030
Refactoring: move logic that script shouldn't be highlighted if there are any FATAL error to KotlinHighlightingUtil
2018-05-11 15:51:33 +03:00
Natalia Selezneva
3cc3ca97ac
Show notification in the editor when new script dependencies available
...
^KT-23616 Fixed
2018-05-11 15:51:28 +03:00
Natalia Selezneva
d422eb6833
Add a delay to reload script dependencies
...
^KT-23616
2018-05-11 15:51:24 +03:00
Natalia Selezneva
3eac391793
Add setting to reload script dependencies on file change
...
^KT-23616
2018-05-11 15:51:19 +03:00
Natalia Selezneva
082916be70
Refactoring of ScriptDependenciesUpdater
...
Extract classes for sync and async dependencies loading
2018-05-11 15:51:14 +03:00
Natalia Selezneva
97848f2812
Minor: reformat
2018-05-11 15:51:09 +03:00
Natalia Selezneva
3f8245988e
Remove GradleScriptDefaultDependenciesProvider as unused
2018-05-11 15:51:04 +03:00
Natalia Selezneva
7fe21f3035
Do not throw exception when script template doesn't have required annotation
...
^KT-23746 Fixed
2018-05-08 11:40:51 +03:00
Natalia Selezneva
178dad3b4e
Refactoring: introduce file attribute utils
2018-05-08 11:40:51 +03:00
Ilya Chernikov
48cf0bd949
Fixes and refactorings after review
2018-05-03 22:15:10 +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
Pavel V. Talanov
33a312c26d
Do not throw when trying to resolve java outside project model
...
#KT-23444 Fixed
#KT-22825 Fixed
2018-04-17 16:19:49 +02:00
Alexey Sedunov
c7e72af170
Override/Implement Members: Copy @Experimental-annotated annotations
...
#KT-22922 Fixed
2018-04-13 20:23:06 +03:00