Commit Graph

463 Commits

Author SHA1 Message Date
Alexander Udalov c1ab08c8ce Refactor KClassValue to store ClassLiteralValue internally
Only invariant array projections and non-null element types will be
supported soon (see KT-26568), so it makes no sense to store the
complete type in KClassValue. What we need is only the ClassId of the
class, and the number of times it's wrapped into kotlin/Array, which is
exactly what ClassLiteralValue represents.

This change helps in decoupling annotation values from
descriptors/types. The only constant value that depends on descriptors
is now AnnotationValue.

 #KT-26582 Fixed
2018-10-25 16:27:23 +02:00
Yan Zhulanow 7626cf6611 Minor: Update test data for kapt stub converter 2018-10-24 23:44:31 +03:00
Yan Zhulanow f19c0c3fb9 Minor: Fix inspection warnings in 'kotlin-annotation-processing' 2018-10-24 20:12:41 +03:00
Yan Zhulanow 17c02a77c7 Minor: Fix inspection warnings in 'kotlin-annotation-processing-base' 2018-10-24 20:12:40 +03:00
Yan Zhulanow 1f6dbc74da Kapt: Restore constant identifiers for field annotations (KT-27334)
The old behavior broke after the refactoring of annotations with use-site targets.
2018-10-24 20:12:37 +03:00
Yan Zhulanow 0ae5d1c08f Kapt: Log annotation processor initialization time 2018-10-24 20:12:36 +03:00
Yan Zhulanow 6d017f07ad Kapt: Support androidx.annotation.RecentlyNullable annotations (KT-26725) 2018-10-24 20:12:35 +03:00
Yan Zhulanow ac1dd59472 Kapt: Fix anonymous type transformer, do not use ClassDescriptor.defaultType as a replacement (KT-27119) 2018-10-24 20:12:34 +03:00
Yan Zhulanow 39863edd0e Kapt: Use correct type mapping mode while mapping super types (KT-27126) 2018-10-24 20:12:32 +03:00
Yan Zhulanow f6bf35c1f5 Kapt: Fix error type correction for super class constructor calls 2018-10-24 20:12:31 +03:00
Yan Zhulanow ba53ba37b0 Replace bunch copies for some of build.gradle.kts files with a DSL 2018-10-24 20:12:30 +03:00
Yan Zhulanow 81cfc3e39f Kapt: Support symlinked Java source files (KT-26817) 2018-10-24 20:12:29 +03:00
Yan Zhulanow 65a1dd9350 Minor: Add a package to JavaKaptContextTest, make it a TestCase 2018-10-24 20:12:28 +03:00
Yan Zhulanow 5d2a3c097c Minor: Update kapt test (nullability annotation is gone in Enum constructors) 2018-10-22 23:06:05 +03:00
Nikolay Krasko 17421ed14d 191: asm-all has 7.0-beta version in Intellij 191
Pass project to fetch extra parameters for asm-all work
2018-10-19 19:16:21 +03:00
Dmitry Petrov fd57a43665 Update testData for ClassFileToSourceStubConverterTestGenerated 2018-09-25 17:25:02 +03:00
Ilya Gorbunov a18770fbbb Remove projectDist dependency helper usages
Use default configuration dependencies instead of projectDist ones.
2018-09-12 06:05:05 +03:00
Yan Zhulanow 50858b6fa3 Kapt, minor: Add a test for inline classes (KT-25800) 2018-09-11 16:41:21 +03:00
Yan Zhulanow 72637268c6 Minor, tests: Move EXPECTED_ERROR directives to the file end (to preserve stable line numbers) 2018-09-11 16:40:42 +03:00
Yan Zhulanow c517b85de1 Kapt: Support also erroneous super interface names 2018-09-11 16:40:42 +03:00
Martin Petrov dfff00d55f KT-26540: Support generated superclasses in KAPT
https://youtrack.jetbrains.net/issue/KT-26540

Included an integration test that relies on a generated superclass.
2018-09-11 16:40:42 +03:00
Yan Zhulanow 3276e348cc Fix kapt tests (Kotlin version updated to 1.3) 2018-09-05 17:15:04 +03:00
Yan Zhulanow b145c97b37 Kapt: Restore line mappings correctly for nested classes and its members 2018-08-24 04:28:13 +05:00
Yan Zhulanow c83581e6b8 Kapt: Strict mode. Issue an error if the converter fails to process a class (#KT-25518, #KT-24272) 2018-08-24 04:28:11 +05:00
Yan Zhulanow ef210d7122 Kapt: Do not write references to anonymous classes to stubs & metadata (#KT-25374) 2018-08-24 04:28:09 +05:00
Yan Zhulanow d08a32c7cb Kapt: Ignore annotation-processing-gradle compiler plugin we got from Gradle (KT-24714)
Cause it's built for the shaded Kotlin compiler and won't work with JPS.
2018-08-24 04:28:05 +05:00
Alexander Udalov 5da8ce844a Minor, move ContentRoot and KotlinSourceRoot to module 'cli'
Also move CONTENT_ROOTS from JVMConfigurationKeys to
CLIConfigurationKeys since it's used on all platforms, not just JVM
2018-08-07 13:38:30 +02:00
Alexander Udalov 14b8f4b52b Minor, change package of outputUtils.kt 2018-08-07 13:38:30 +02:00
Yan Zhulanow 54470fe2b7 Pill: Remove source dependencies to 'tests-common'
'tests-common' module does only have a test source set so the dependency is redundant.
2018-08-07 11:55:23 +03:00
Raluca Sauciuc 0e8a04c4ba as33: Android dependency reversal
(cherry picked from commit be781f4f462f74ca0efcc91b5c07a5b3756ba5b2)
2018-07-19 19:09:39 +03:00
Yan Zhulanow a4b3653e1c Debugger: Navigate to the right file in MPP projects (#KT-25152, #KT-25147) 2018-07-17 20:54:29 +03:00
Yan Zhulanow 02ee3aef3f Kapt: Fix "Unknown option: infoAsWarnings" (#KT-25396) 2018-07-17 20:54:28 +03:00
Yan Zhulanow 423bd573a3 Kapt: Do not add imports for overloaded callables (#KT-25071) 2018-07-12 20:36:41 +03:00
Yan Zhulanow 00edc007f8 Minor: Fix the "Could not find installation home path" terminal warning 2018-07-12 20:36:41 +03:00
Yan Zhulanow 6392adcfc9 Kapt: Ensure we collect .java files from the unique directories (#KT-24963) 2018-07-12 20:36:40 +03:00
Yan Zhulanow 392460e426 Kapt: Allow to disable info->warning mapping in logger (#KT-24985) 2018-07-12 20:36:39 +03:00
Yan Zhulanow 8b3aa3dc7f as32: Kapt: 'kapt.kotlin.generated' is not marked as source root in Android Studio (#KT-24449) 2018-07-12 20:36:39 +03:00
Nicolay Mitropolsky eaa58c3ec2 KtLightParameter should have a KtLightModifierList anyway
otherwise we wouldn't get proper annotations for `equals` in data-classes
2018-07-11 09:37:28 +03:00
Alexey Tsvetkov bfc608de29 Close kapt context 2018-07-04 14:55:42 +03:00
Alexey Tsvetkov 5bf5632886 Do not load annotation processors when generating stubs
#KT-25131 fixed
2018-07-04 14:55:42 +03:00
Ilya Gorbunov bed26dc700 Fix local delegated property smartcast usage 2018-06-29 20:11:03 +03:00
Yan Zhulanow 2bc45e0484 Kapt: Extract annotation processing running logic from the compiler plugin 2018-06-08 19:37:19 +03:00
Yan Zhulanow eb4492394e Kapt: Fix compatibility with Java 9
1. Move option set up to one place, before using any of Java context components;
2. Set Javac file manager options (new to Java 9)
2018-06-08 19:37:19 +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 b6d59da8a8 Kapt3: Avoid normal compilation in case if no apClasspath entries are passed (#KT-24538) 2018-05-24 01:01:52 +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
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
Zalim Bashorov ab03ab84bb Regenerate tests 2018-04-19 13:17:27 +03:00