Alexander Udalov
e4afbae954
Minor, fix test data for kotlinx.serialization bytecode text test
2019-11-21 16:44:30 +01:00
Alexander Udalov
608449f41d
IR: introduce StubGeneratorExtensions for ExternalDependenciesGenerator
...
This is a refactoring to simplify the API of
ExternalDependenciesGenerator and to constrain future additions of
platform-specific stub generator extensions.
2019-11-20 15:16:57 +01:00
Anatoly Nikitin
81e2e119e2
Fix propagation of dependency resolution failure reports during script compilation
2019-11-14 08:38:50 +01:00
Roman Artemev
63110ab636
[IR] Remove deprecated correspondingProperty from IrField
2019-11-12 20:45:11 +03:00
Roman Artemev
ed79ab68ab
[IR] Remove DeclarationDescriptor from IrExpression* tree API
2019-11-12 20:45:11 +03:00
Roman Artemev
b391c066d6
[IR] Pass class Type Parameters into IrConstructorCall factory explicitly
...
to avoid unexpected crash on uninitialized parent in psi2ir phase
2019-11-12 20:45:11 +03:00
Roman Artemev
ba373c67d7
[IR] Remove FunctionDescriptor from IrCall-like node's constructor interface
2019-11-12 20:45:11 +03:00
Alexander Udalov
57a674e9e6
Make fast class files reading mode default in compiler tests
...
This makes sense because this mode is the default in the production
compiler. Forgetting to enable it where necessary led to different
bizarre test failures, see for example changes around 3fee84b966 and
KT-34826
2019-11-11 15:40:49 +01:00
Alexander Udalov
ce09be3f59
Add TargetBackend.isIR, simplify JVM IR test configuration
2019-11-11 12:10:29 +01:00
Georgy Bronnikov
688a2185fa
Tests for Kapt3 with JVM_IR backend
2019-11-07 13:28:09 +03:00
Nikolay Krasko
c50e60f90f
More mutes for 193 branch
...
One more test for KT-34689.
2019-11-05 20:13:30 +03:00
Alexander Udalov
efaf779133
Minor, fix test data for kotlinx.serialization bytecode text test
2019-11-04 16:17:58 +01:00
Georgy Bronnikov
51459adb8c
Add integration test for Kapt3+IR
2019-11-04 11:26:45 +03:00
Georgy Bronnikov
195f225e36
Run Kapt3 with old backend, even if IR is specified in configuration
...
Kapt does not currently work with IR backend. Temporarily switch to the
old JVM backend when running it.
2019-11-04 11:26:45 +03:00
Vyacheslav Gerasimov
3b088818a5
Build: Add sources and javadocs to Kotlin Plugin publication
2019-11-01 16:22:42 +03:00
Ilya Chernikov
9aaf08de08
Fix equality for the KtFileScriptSource
2019-10-29 20:44:18 +01:00
Alexander Udalov
cf61957e3c
Minor, fix kotlinx-serialization bytecode test data
...
After some changes to the JVM IR backend
2019-10-25 11:23:11 +02:00
Vyacheslav Gerasimov
b1d7df697d
Build: Add dependency on gradle plugin to android-extensions-idea module
2019-10-24 21:01:27 +03:00
Vyacheslav Gerasimov
38ea5a85a3
Build: Add maven publication for Kotlin plugin artifacts
2019-10-24 17:06:19 +03:00
Ivan Gavrilovic
68723125f2
Clean up KAPT incremental tests
...
Remove redundant class to invalidate sources, because it is already
handled in the KaptContext constructor.
2019-10-24 21:33:01 +09:00
Yan Zhulanow
7fc25a9c04
Pill: Add GenerateRuntimeDescriptorTests to the "Generate all tests" run configuration (KT-34494)
2019-10-24 21:33:01 +09:00
Yan Zhulanow
6bf15b6d37
Kapt: Generate constant value initializers for mutable properties (KT-30164, KT-29355)
2019-10-24 21:33:01 +09:00
Yan Zhulanow
9edd4554a9
Kapt: Support @Deprecated annotations (KT-30368)
2019-10-24 21:33:01 +09:00
Yan Zhulanow
f93549748a
Fix a number of compiler/IDE warnings in IDE and kapt modules
2019-10-24 21:32:57 +09:00
Nikolay Krasko
4ed64b0283
Regenerate tests with TargetBackend.ANY remove and using runTest with this
2019-10-23 12:49:48 +03:00
Nikolay Krasko
2c0ce40f75
Refactoring: extract test dummy traces
2019-10-23 12:49:47 +03:00
Leonid Startsev
e89aabbba1
Provide a diagnostic when @Serializable annotation is missing on enum.
...
It is required when enum members contain some special annotations which should be recorded in descriptor.
Due to some recursive/lazy resolve problems, compiler plugin frontend can't infer @Serializable on enum automatically, therefore, we ask a user to explicitly provide it.
Also fix ir tests
2019-10-21 19:48:29 +03:00
Leonid Startsev
3c9a02e271
Associate serializers added via @UseSerializers by argument class, not type
...
Use class instead of type because MyType<T> and MyType<Int> are different types, therefore map lookup was failing.
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/533
2019-10-21 19:48:27 +03:00
Leonid Startsev
855a867893
Support sealed, generic and abstract polymorphic inheritors in sealed class serialization
2019-10-21 19:48:26 +03:00
Leonid Startsev
1ebc65b8e4
Sealed classes serialization
2019-10-21 19:48:26 +03:00
Leonid Startsev
72f8f2b7b5
Custom-serializable enums for IR
2019-10-21 19:48:24 +03:00
Leonid Startsev
bd8133e02c
Custom-serializable enums for JS
2019-10-21 19:48:24 +03:00
Leonid Startsev
e76ab06029
Custom-serializable enums for JVM
2019-10-21 19:48:23 +03:00
Leonid Startsev
e9e7d1479a
Remove redundant additional check for @Polymorphic annotation
2019-10-21 19:48:23 +03:00
Leonid Startsev
8a90b82e9b
Object serialization for JVM, JS and Native
2019-10-21 19:48:22 +03:00
Vladimir Dolzhenko
fa0398ffd3
Fix readAccess in ScriptExtraImportsProviderExtension on checking isScript
...
#EA-214435 Fixed
2019-10-21 17:18:24 +02:00
Igor Yakovlev
8c65a9a2aa
Move AllOpen UL support to separate extension
2019-10-18 23:22:48 +03:00
Igor Yakovlev
3f9bffcc5f
Move UL compiler plugin support to separate extension point
2019-10-18 23:22:47 +03:00
Igor Yakovlev
6ce37fff95
Add UL support for AllOpen compiler plugin
2019-10-18 23:22:47 +03:00
Igor Yakovlev
558a700f51
Add UL support for ParcelableCodegenExtension compiler plugin
2019-10-18 23:22:47 +03:00
Igor Yakovlev
110a6700e4
Add UL support for NoArg compiler plugin
2019-10-18 23:22:47 +03:00
Steven Schäfer
f2d01aeabd
Update serialization IR bytecode listing test
2019-10-18 17:20:22 +02:00
Jordan Demeulenaere
158f7f1cd7
Avoid PsiFile searching when resolving imported scripts descriptors.
2019-10-18 13:17:28 +03:00
Ivan Gavrilovic
4e807692e5
KT-34167: Warn when incremental AP does not follow the contract
...
Isolating incremental AP must report exactly one originating source file.
This commit logs a warning when this constraint is violated.
Test: AnnotationProcessorDependencyCollectorTest.testIsolatingWithoutOrigin
2019-10-16 16:33:00 +09:00
Ivan Gavrilovic
8f94a71de7
KT-33617: Handle non-hierarchical URIs for incremental annotation processing
...
JDK9 may decide to load .java files from jar when resolving a type, even
when .class file exists in the same jar. Further on, these files will be
parsed and analyzed, which triggers the listener used by incremental
annotation processing. This commit avoids analyzing those files, and
makes sure URI passed from the compiler are such that a File instance
can be created.
Test: KaptIncrementalWithIsolatingApt.testSourcesInCompileClasspathJars
2019-10-16 16:33:00 +09:00
Nicolay Mitropolsky
f6e0e5b80d
Uast: a workaround for getting parent for KotlinUAnonymousClass
...
when it is used in field initialisation
2019-10-14 11:30:20 +03:00
Ilya Chernikov
1f46e60153
Implement samWithReceiver support for scripts when ...
...
it configured from script compilation configuration
#KT-34294 fixed
2019-10-11 17:43:50 +02:00
Ilya Chernikov
2568804eaa
Instruct platform code to use NIO2 always
...
since we're not always use jna (means that we can get warnings about missing jna libs)
and according to the IDEA team, NIO2 works well enough to rely on it
2019-10-11 17:43:49 +02:00
Leonid Startsev
d8ad0ec43a
Do not add synthetic deserialization constructor if .deserialize method is customized
...
Otherwise, there was an added descriptor without generated IR on Native
2019-10-11 14:24:51 +03:00
Ilya Chernikov
54caf4bf16
Add resolving from classloader to REPL pipeline
2019-10-10 17:43:30 +02:00