Yan Zhulanow
025f861e76
Minor: Fix path separators check on Windows
...
(cherry picked from commit 974bbe7)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
c6c1673902
Kapt: load all annotations, even if annotation processors does not require it explicitly. Some annotation processors may want to process some more annotations (see DbFlow, Database annotation).
...
Blacklist some common-used Java and Kotlin annotations instead (like Deprecated, Nullable or Metadata).
(cherry picked from commit 6856a7c)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
975364b2ed
Kapt: Provide SourceRetentionAnnotationHandler for incremental compilation.
...
Collect annotations with the "SOURCE" retention.
(cherry picked from commit 6ef66e7)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
c3ae66bc9c
Minor: fix compilation exception (due to exception in kotlinc)
...
(cherry picked from commit 5f2d3c4 )
2016-09-10 17:36:15 +03:00
Yan Zhulanow
471ddc5a93
Kapt: Write annotations with the "SOURCE" retention if kapt2 is enabled
...
(cherry picked from commit 6177b2b)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
00355f3c52
Kapt: Remove generated output directory each time before annotation processing
...
(cherry picked from commit c4b772a)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
32d77e5226
Kapt: support incremental compilation in Gradle (KT-13500)
...
Kapt will process sources on each step of incremental compilation.
(cherry picked from commit 4cb2127)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
743be477ec
Kapt: Add tests with Filer.
...
JavaFileObject.getName() now returns a path as required.
(cherry picked from commit c611f9b)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
824b778a7b
Kapt: support multiple annotation processing steps (KT-13651)
...
(cherry picked from commit 880e183)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
6ceaac63dc
Kapt: provide a default constructor if PsiClass does not have any
...
(cherry picked from commit 550b1c0)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
7a00b028af
Kapt: Do not substitute type arguments for PsiClassReferenceType
...
(cherry picked from commit 3954c71)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
cacec67044
Kapt: Do not use PsiType comparison in equals() where possible
...
(cherry picked from commit 89ba634)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
18068c699d
Kapt: Represent a single element as an array if the annotation method type is array type
...
(cherry picked from commit 19ce4cb)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
9127788f4a
Kapt: Fix erasure() for executable types (KT-13629)
...
(cherry picked from commit 461c29d)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
941d016cef
Kapt: abort compilation on error in annotation processing stage (KT-13622)
...
(cherry picked from commit f78b8b4)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
cc7eaeb910
Kapt: Allow passing primitive types and void to erasure() (KT-13617)
...
(cherry picked from commit 91444c5)
2016-09-10 17:36:15 +03:00
Nikolay Krasko
67f353903e
Show lint diagnostics even if there're errors in the file (KT-12022)
...
It also affects working with KotlinChangeLocalityDetector. Right after error is fixed in local context file is still reported as having errors and diagnostics are not counted.
#KT-12022 Fixed
2016-09-02 13:41:24 +03:00
Yan Zhulanow
1a94e2202b
Minor: Fix compilation error
2016-08-29 18:30:27 +03:00
Yan Zhulanow
7810678389
Kapt: Fix type arguments in JeDeclaredType. In case of type variable, JeTypeVariableType should be returned
...
(cherry picked from commit ed34ec0)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
ebcc762ae9
Kapt: JeTypeElement getInterfaces() and getSuperClass() should provide reference type mirrors
...
(cherry picked from commit 5f50ab6)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
cd44540965
Kapt: Support String[] in annotation proxy
...
(cherry picked from commit 5e9eab9)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
0042a59fb6
Kapt: Use also the compile classpath, not only apt classpath
...
(cherry picked from commit d810119)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
a8b577cd09
Kapt: Support nested annotations property.
...
Also do not rely on Java class comparison, check against qualified names.
(cherry picked from commit 7610945)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
49bd303988
Kapt: Fix broken assertion
...
(cherry picked from commit 36b0b52)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
9960e7f7cd
Kapt: Get rid of the 'compiler-tests' dependency in 'plugins-tests'
...
(cherry picked from commit bb370f1)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
46f9e02c06
Kapt: Fix type arguments order for JeDeclaredType, should not use substitutor
...
(cherry picked from commit a9c77e1)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
d07e6c752b
Kapt: Support default packages in Filer
...
(cherry picked from commit 3ced8a6)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
8c4fb0a709
Kapt: Support inherited annotations
...
(cherry picked from commit 02a3e6b)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
407af3a0e5
Kapt: Gradle plugin for the new kapt
...
(cherry picked from commit f4fc8f1)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
399059729d
Kapt: verbose output mode
...
(cherry picked from commit e6067d5)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
f5d58d9944
Kapt: Provide toString() implementations for no-types
...
(cherry picked from commit df9c825)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
badf8dbc53
Kapt: Fixes in KotlinElements:
...
1. 'overrides()' when 'type' extends containing(overrider) and implements containing(overridden). According to documentation, In this case the function should return true.
2. Handle both kotlin.Deprecated and java.lang.Deprecated for Kotlin in 'isDeprecated'.
3. Fix 'isFunctionalInterface'.
(cherry picked from commit a14d7ce)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
462c7d91d2
Kapt: Calculate constant values in the similar way.
...
Always use originalElement in JeAnnotationValue factory.
(cherry picked from commit 0ff9584)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
4710fab49f
Kapt: Use the base types in KotlinProcessingEnvironment
...
(cherry picked from commit ed8e2e4)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
927280f7ce
Kapt: add some JeElement tests
...
(cherry picked from commit 948a4b6)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
0fc92c784b
Kapt: add JeElementRenderer
...
(cherry picked from commit 3eecf78)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
cd09f2bcb8
Kapt: Minor, refactor JeAnnotationMirror:getElementValues()
...
(cherry picked from commit 649b938)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
23b343bb03
Kapt: annotation-processing is not dependent on 'cli' module anymore
...
(cherry picked from commit 4591f13)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
f61367df28
Kapt: Fixes on review
...
(cherry picked from commit be31262)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
5b8e6abdeb
Kapt: Support Java source root processing.
...
Support resource file writing.
(cherry picked from commit 7a06a91)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
9d2144f221
Kapt: Support "*" in supported annotation qualified names (all annotations)
...
(cherry picked from commit 27ec053)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
a73cf65840
Kapt: Check DEFAULT modifier only in Java 8
...
(cherry picked from commit 71c8dfb)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
53921c3f74
Kapt: Drop custom annotation stub factory, implement it with AnnotationParser in sun.reflect as done in Javac
...
(cherry picked from commit 82dcbf3)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
6eb3d7e002
Kapt: Refactor kapt type wrappers. Now every ordinary (not NoType) type has a backed PsiType so it's easy to call utility functions from IntelliJ.
...
(cherry picked from commit 0a684aa)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
0181dd000d
Kapt: Implement Annotation Processing plugin in Kotlin (KT-13499)
...
(cherry picked from commit 32c461a)
2016-08-29 16:31:16 +03:00
Yan Zhulanow
cc12a6c228
Kapt: Add APT wrappers for PSI elements
...
(cherry picked from commit 1214513)
2016-08-29 16:31:16 +03:00
Mikhail Glukhikh
692623cb55
Cleanup: smart casts of safe call receiver applied (do NOT cherry-pick to 1.0.X)
2016-07-27 16:24:18 +03:00
Nikolay Krasko
2783c9bde2
Fix AbstractAnnotationProcessorBoxTest on Windows: load text without \r
2016-07-07 02:51:25 +03:00
Alexander Udalov
6ba32ed624
Refactor CallChecker and subclasses
...
Encapsulate everything that is needed in checkers into CallCheckerContext. Pass
an instance of this context instead of BasicCallResolutionContext to checkers.
Also pass an instance of the element to report errors on: this is useful
because before this, every checker had its own way of determining where should
the error be reported on. Some of them, for example, were not doing anything if
Call#calleeExpression returned null, which is wrong, see operatorCall.kt
#KT-12875 Open
2016-06-29 19:20:00 +03:00
Yan Zhulanow
bb083a51cc
KT-12895, EA-84877: Fix NoSuchMethodError thrown when saving a Kotlin file.
...
newOutputStreamSupplier() is deprecated and was deleted in Guava 18.
2016-06-29 17:52:25 +03:00