Yan Zhulanow
47657df8da
Kapt: Convert valid references to qualified names (KT-26304)
2018-11-27 22:21:27 +09:00
Yan Zhulanow
6a8a8b794d
Kapt: Support correctErrorTypes in suspend functions (KT-27711)
2018-11-27 22:21:27 +09:00
Yan Zhulanow
4c5e982f3e
Kapt: Fix an ArrayIndexOutOfBoundsException for suspend functions with generated return types
2018-11-27 22:21:26 +09:00
Yan Zhulanow
69633e6686
Kapt: Fix stubs for delegated properties with anonymous types (KT-27910)
2018-11-27 22:21:26 +09:00
Yan Zhulanow
5fd070a9b9
Kapt: Add option for showing annotation processor timings (KT-28024)
2018-11-27 22:21:26 +09:00
Yan Zhulanow
9feb834d97
Kapt: Support paranoid mode in memory leak searcher
2018-11-27 22:21:26 +09:00
Yan Zhulanow
ecc44419b6
Kapt: Support KotlinOptions class in KaptWithoutKotlincTask
2018-11-27 22:21:25 +09:00
Yan Zhulanow
7e4069f114
Kapt, Refactoring: Introduce 'KaptOptions'
...
1. Use 'KaptOptions' for all kapt options, including paths and flags.
2. Use a single 'KAPT_OPTIONS' compiler configuration key for setting all options (using a mutable KaptOptions.Builder).
3. Pass 'KaptOptions' instead of separate flags.
4. Remove 'KaptPaths'.
5. Remove deprecated 'aptOnly' CLI option.
2018-11-27 22:21:25 +09:00
Toshiaki Kameyama
a621171d9b
KT-24515 Intention to add an exception under the cursor to @Throws annotations
2018-11-27 22:21:25 +09:00
Yan Zhulanow
3918ec71be
Kapt: Suppress warnings for deprecated kapt option usage
2018-11-27 22:21:25 +09:00
Yan Zhulanow
abd1646d42
Kapt: Detect memory leaks in annotation processors (KT-28025)
2018-11-27 22:21:24 +09:00
Yan Zhulanow
eb3511164f
Fix DataBinding kapt integration test
2018-11-27 22:21:24 +09:00
Yan Zhulanow
911ad32580
Kapt: Check if the psiElement is bound to some Document instance before asking for its text range
...
textRange has an assertion that fails if the Document is not set.
2018-11-27 22:21:24 +09:00
Yan Zhulanow
cd968ba8fe
Kapt: Clear Javac shared ZIP cache after annotation processing or stub generation (KT-25756)
2018-11-27 22:21:24 +09:00
Yan Zhulanow
0ffa901859
Switch plugin and annotation processor loading to the own implementation of ServiceLoader
...
'ServiceLoader' in JDK8 leaks file handles (https://bugs.openjdk.java.net/browse/JDK-8156014 ).
New implementation uses the ZipFile API, it also doesn't operate on the whole classpath which is not often needed.
2018-11-27 22:21:24 +09:00
Yan Zhulanow
11e23ecc70
Kapt: Fix 'apt+compile' mode, clear package caches directly
2018-11-27 22:21:23 +09:00
Yan Zhulanow
4e84a6b601
Kapt: Do partial analysis only for stub generation
...
Kapt has a 'compile' mode which repeats analysis after the annotation processing.
It should not run in the partial analysis mode.
2018-11-27 22:21:23 +09:00
Yan Zhulanow
69ec958aab
Kapt: Add tests for the command-line 'kapt' tool
2018-11-27 22:21:23 +09:00
Yan Zhulanow
6e5eb0fdd4
Kapt: Implement 'kapt' command-line tool (KT-24998, KT-24997)
2018-11-27 22:21:23 +09:00
Yan Zhulanow
2e56feed73
Performance optimization: do not create a new list object on each new option
2018-11-27 22:21:23 +09:00
Yan Zhulanow
b6aecf3933
Remove hacky PluginURLClassLoader
...
It was once needed for the compiler plugins bundled straight into the compiler (read: kapt1). Since there are no bundled plugins anymore, the parent-last plugin classloader itself is not needed anymore.
2018-11-27 22:21:22 +09:00
Yan Zhulanow
02340a4fe3
Removed obsolete 'BundledCompilerPlugins' class
...
It was used once in kapt1, but since it's gone, there is no need in this anymore.
2018-11-27 22:21:22 +09:00
Yan Zhulanow
c5e241d5c6
Remove deprecated usages of CliOption in official compiler plugins
2018-11-27 22:21:22 +09:00
Yan Zhulanow
49941339a3
Introduce AbstractCliOption, rewrite all possible kapt options as enum values
2018-11-27 22:21:22 +09:00
Yan Zhulanow
546eff6e45
Kapt: Use light analysis by default
2018-11-27 22:21:21 +09:00
Yan Zhulanow
fa0f447a23
Minor: Refactor AptMode a bit
2018-11-27 22:21:21 +09:00
Yan Zhulanow
fe0f9005b0
Kapt: Allow to use class output directory as a generated class output
2018-11-27 22:21:21 +09:00
Yan Zhulanow
7893bb60a6
Kapt: Using 'kapt' configuration without the 'kotlin-kapt' plugin applied should throw an error (KT-26145)
2018-11-27 22:21:21 +09:00
victor.petukhov
f5d44003cd
Add tests for type annotations with unresolved reference and invalid target (KT-28424, KT-28449)
2018-11-27 13:55:12 +03:00
Andrey Uskov
620969652a
Fixed dependency resolution of root project
...
#KT-28389 Fixed
2018-11-27 13:46:56 +03:00
Toshiaki Kameyama
4abcd9a053
Make internal: don't suggest for @JvmField property inside companion object of interface #KT-27138 Fixed
2018-11-26 18:39:54 +03:00
Pavel Punegov
9cc93e9e55
Fix Contracts deserialization for native plugin
2018-11-26 18:19:03 +03:00
Pavel Punegov
fe0a2bc75e
Provide SerializerExtension methods with child DescriptorSerializer instance
...
to make Native be able to serialize backing properties and inline bodies.
Change visibility for functions and properties of DescriptorSerializer.
2018-11-26 18:15:30 +03:00
Toshiaki Kameyama
726b9272f3
Move out of companion object: don't suggest for @JvmField property inside companion object of interface #KT-28443 Fixed
2018-11-26 18:01:43 +03:00
Nikolay Krasko
3ca934e5ea
Update test data for gradle migration test
2018-11-26 17:23:00 +03:00
Nikolay Krasko
bc6f53d023
Auto-indent || and && operator typed on a new line (KT-28402)
...
#KT-28402 Fixed
2018-11-26 17:22:59 +03:00
Nikolay Krasko
9c41ec46ee
Auto-indent elvis operator on new line (KT-28371)
...
#KT-28371 Fixed
2018-11-26 17:22:58 +03:00
Nikolay Krasko
8fad4db8ce
Auto-popup lambda type parameter info (KT-28401)
...
#KT-28401 Fixed
2018-11-26 17:22:45 +03:00
Vyacheslav Gerasimov
d30b66467b
183: Update 183 Idea version to the release one
2018-11-26 17:00:38 +03:00
Simon Ogorodnik
fd1a6f3830
KT-20725: Fix storing NotProperty settings
...
#KT-20725 fixed
2018-11-26 16:38:23 +03:00
Mikhail Glukhikh
cb7f7b1de5
Report "use of non-const Kotlin property" also on some assignments
...
#KT-25536 Fixed
2018-11-26 15:54:20 +03:00
Mikhail Glukhikh
651faa4ab2
Report "use of non-const Kotlin property" also on Java case labels
...
#KT-25536 Fixed
2018-11-26 15:54:07 +03:00
Denis Zharkov
23c43cd124
Support retrieving class of enum entry in ultra-light classes
2018-11-26 11:36:43 +03:00
Denis Zharkov
5cf2d659dc
Minor. Split ultraLightPsi.kt into three files
...
By one for PsiClass, PsiField and PsiMethod implementations
2018-11-26 11:36:31 +03:00
Denis Zharkov
5231da4320
Fix hasAlias check when resolving annotation in ultra-light classes
...
When trying to estimate if annotation entry might be resolved
to a specified fqName we should track the short name from entry itself
instead of the short name of desired annotation
2018-11-26 11:36:30 +03:00
Denis Zharkov
aa5a2a2643
Support @JvmField on primary ctr properties in ultra-light classes
2018-11-26 11:36:29 +03:00
Denis Zharkov
206466f6ce
Support enums in ultra-light classes
...
There's no need to add "values"/"valueOf" methods for them
(see com.intellij.psi.impl.compiled.StubBuildingVisitor#visitMethod that ignores them too)
We already have tests that check enum entries/synthetic methods
are properly resolved in Java:
idea/testData/kotlinAndJavaChecker/javaAgainstKotlin/*Enum*
2018-11-26 11:36:28 +03:00
Denis Zharkov
d5a640b82d
Get rid of checks for ultra-light classes unsupported annotations
...
Seems like all of the Jvm* annotations related to classes are supported by now
2018-11-26 11:36:28 +03:00
Denis Zharkov
ca9f42f449
Support @JvmName in ultra-light classes
2018-11-26 11:36:27 +03:00
Denis Zharkov
17328a442a
Support @JvmSynthetic in ultra-light classes
2018-11-26 11:36:26 +03:00