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
Ilya Chernikov
2219b950f1
Implement resolve top-level functions and props from classloader
...
#KT-33892 fixed
2019-10-10 17:43:29 +02:00
Ilya Chernikov
7b93970ce2
Use default scripting host configuration if not provided
2019-10-10 17:43:27 +02:00
Roman Artemev
6f2768e774
[JS SCRIPT] Use new dependency resolver in script/js subsytem
2019-10-10 12:52:06 +03:00
Roman Artemev
c0f279811e
[JS SCRIPT] refactor js script infrastructure
...
- Implement proper script compiler proxy to correctly handle script and its closed-world dependencies
- Clean up zoo of JsScriptCompilers
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
f59e393e37
[CLI] add support running scripts in js compiler, extract common code with jvm part
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
50c08b25d3
[SCRIPTING] create extension for scripting in JS and extract common code with JVM part
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
c6c3d2de9e
[JS SCRIPTING] create tests for repl
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
62885ba497
[JS SCRIPTING] create compilers for scripting
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
240abdb750
[JS IR BE] update current lowerings for IrScript
2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov
d79279d8a5
[JS SCRIPTING] create CoreCompiler for scripting
2019-10-10 12:52:05 +03:00
Leonid Startsev
395d595b22
Supply JVM and JS platforms when compile from CLI
...
To be able to check descriptor's platform in frontend during plugin processing.
This is needed for serialization plugin because some synthesized descriptors (annotation interface implementation) must be JVM-only (or the Native compilation fails).
2019-10-09 14:18:54 +03:00
Yan Zhulanow
a4c8ccee06
kapt: Fix compilation in 'compile' running mode (KT-33800)
2019-10-08 19:13:57 +09:00
Pavel Kirpichenkov
b7e5d9faae
Update annotation rendering in diagnostics
...
Disable annotation rendering in default type and descriptor renderers.
Preserve annotations in Android and Serialization plugins.
Update error texts in ide tests.
Nullability annotations in Java descriptors are rendered with context-dependent renderer.
#KT-20258 Fixed
2019-10-04 11:18:45 +03:00
Ilya Chernikov
b8258bfc71
Drop TestCaseWithTempDir usage from scripting compiler plugin tests
...
fighting with flaky tests
2019-10-03 12:24:50 +02:00
Ilya Chernikov
3fec15202f
[minor] fix source root creation from imported scripts:
...
make the usages of KotlinSourceRoot consistent everywhere
2019-10-03 12:24:50 +02:00
Igor Yakovlev
ca9e760379
Remove redundant analyzeWithAllCompilerChecks from NoArg plugin test
2019-10-01 13:53:20 +03:00