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
Vyacheslav Gerasimov
d11fbac511
Build: Use cache-redirector.jetbrains.com to prevent connection timeouts
2018-10-12 14:57:37 +03:00
Leonid Startsev
b611facd71
Check if serialization plugin presents in the facet compiler classpath before applying extensions logic
...
#KT-27166 Fixed
2018-09-28 18:31:03 +03:00
Mikhail Zarechenskiy
0da1b9b80f
Revert "Migration change: temporarily specify type explicitly"
...
This reverts commit bc6e091004 .
This commit was needed to avoid bootstraping, now we can revert it
2018-09-26 11:51:57 +03:00
Dmitry Petrov
fd57a43665
Update testData for ClassFileToSourceStubConverterTestGenerated
2018-09-25 17:25:02 +03:00
Mikhail Zarechenskiy
bc6e091004
Migration change: temporarily specify type explicitly
...
Because of introduction of `BuilderInference` annotation.
Change it back after bootstrap
2018-09-18 18:55:26 +03:00
Denis Zharkov
ed7dd6fccb
Minor. Move serialization annotation fq-names to IDE light-classes
...
They are a kind of a hack applied in light-classes and it'd be nice
to prevent them being used in irrelevant contexts
kotlin-serialization-compiler module should not depend on idea,
thus we can't use annotations directly there.
So, we copy-paste them and add a test on names consistency
2018-09-18 18:37:11 +03:00
Yan Zhulanow
b38e9b6b05
Make all intellij-core dependencies non-transitive
2018-09-17 20:08:27 +03:00
Denis Zharkov
a4b2e5964a
Do not build dummy light classes for serialization-related classes
...
Otherwise, whether LazyLightClassMemberMatchingError happens
or other type of errors because serialization plugin expects
full resolution in the correct module
Currently, only @Serializable annotation leads to exceptions,
but just in case we consider both of them as potentially problematic
#KT-26895 Fixed
2018-09-17 19:09:40 +03:00
Leonid Startsev
fe9ce45e1d
Add initialization of constantValueGenerator for correct work
...
Exception was thrown from serialization plugin after compiler
refactoring
2018-09-17 19:07:10 +03:00
Ilya Chernikov
a03bfb3561
Implement support for non-kts scripts in gradle
...
#KT-26784 fixed
2018-09-13 20:47:21 +02: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
Leonid Startsev
fa990174ef
Rename kotlinx-serialization => kotlin-serialization
...
Discussed with @elizarov and @ilya-g
2018-09-11 17:31:38 +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
6f7741b6bb
Minor: Move AbstractParcelBytecodeListingTest to compiler tests, change its format a bit
2018-09-11 16:40:43 +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
Ilya Chernikov
a02d5b4b21
Rename script annotation params according to configuration keys...
...
rename evaluation params consistently too
2018-09-11 14:56:51 +02:00
Leonid Startsev
585d584857
Minor: get rid of some compiler warnings in kotlin-serialization-compiler-plugin
2018-09-11 14:36:10 +03:00
Leonid Startsev
7011e9422d
Rename kotlinx-gradle-serialization-plugin => kotlinx-serialization
2018-09-11 13:22:17 +03:00
Leonid Startsev
23fd0a6ec9
Split IDE part from kotlinx-serialization-compiler-plugin
2018-09-11 13:22:16 +03:00
Mikhail Glukhikh
0169719a87
Add native dependencies to uast-kotlin module tests
2018-09-10 14:33:36 +03:00
Ilya Chernikov
3f2552af60
Export filename extension from KotlinScriptDefinition, register...
...
extensions after loading definitions
2018-09-10 11:21:26 +02:00
Mikhail Glukhikh
f909761974
Add native dependencies to android-extensions-idea module tests
2018-09-08 12:16:26 +03:00
Leonid Startsev
dea69e4469
Integrate serialization plugin into big Kotlin plugin
...
Split import handlers into multiple files
Add empty Maven handler for Android Studio
Add testRuntime dependency on kx-serialization-plugin for all modules which require compiler
plugins in test classpath
2018-09-07 21:17:07 +03:00
Leonid Startsev
087f60389a
Migrating to 1.3 preview API
2018-09-07 21:17:06 +03:00
Leonid Startsev
359a37c9c3
Fix after rebase
2018-09-07 21:17:05 +03:00
Leonid Startsev
6770cccd61
[IR-plugin] New symbol tables
2018-09-07 21:17:04 +03:00
Leonid Startsev
566e5ce603
Updates for new API
2018-09-07 21:17:03 +03:00
Leonid Startsev
2e50e4e816
Extract naming conventions
2018-09-07 21:17:02 +03:00
Leonid Startsev
8cd5966c4a
IR-plugin
...
[IR-plugin] Synthetic property declaration in $serializer
[IR-plugin] Saving most of simple cases
[IP-plugin] Some refactoring and start of work on load func
[IP-plugin] Loading simple case without validation
[IP-plugin] Rebase to IR types and Native-enabled
[IP-plugin] Generating .serializer() accessor in companion
[IP-plugin] Basic synthetic deserializing constructor, fixed some todos
[IR-plugin] Remove reference to SerialDescriptor.init() since K/N now has freeze-aware lazy
2018-09-07 21:17:01 +03:00
Leonid Startsev
edcac21723
Names from new runtime
2018-09-07 21:17:00 +03:00
Leonid Startsev
9ad3922c7d
Fix 1.2.50 compatibility
...
Updated version to 0.5.1
Fix resolving serializers for classes from other modules
(Kotlin/kotlinx.serialization/153)
Respect @SerialName on classes
Add support for @SerialInfo on class-level
2018-09-07 21:16:58 +03:00
Leonid Startsev
26ac6bd887
While creating descriptors, add type arguments not from serializable class definition
...
but from actual KSerializer implementation.
This provides better support for user-defined or external generic serializers
Fix order of resolving serializers: user-overriden should go before polymorphic and default
Don't generate additional constructor if @SerialInfo has no properties
Workaround for recursive resolve
on @Serializable(with) and @Serializer(for) pair annotations
Don't trigger the whole resolve if we need just to check that there is
an argument on the annotation; check PSI instead.
Also, return back check on serializable annotation constructor arguments
2018-09-07 21:16:57 +03:00
Leonid Startsev
572e8873ca
Respect @Serializable(with) on properties on JS too.
...
Don't generate constructor for passing generic serializers if user already defined proper one.
2018-09-07 21:16:56 +03:00
Paul de Vrieze
365a183d01
Fix for Kotlin/kotlinx.serialization/136
...
Create a version that actually passes a type parameter in write$Self.
This version should take the correct type parameters from the class
rather than adding a function type parameter shared with all
serializers.
2018-09-07 21:16:56 +03:00
Leonid Startsev
114fb5790a
Fix for Kotlin/kotlinx.serialization/118
...
Fix for Kotlin/kotlinx.serialization/123: resolve annotation parameters in-place
Fix for Kotlin/kotlinx.serialization/125
Now polymorphic serializer required by all modalities expect final
2018-09-07 21:16:55 +03:00
Leonid Startsev
97694e65aa
Update version to 0.4
...
Optimize references in generated code. Also fixes Kotlin/kotlinx.serialization/issues/65
Fix (again) broken char boxing
Rebased on 1.2.40 and fixed broken compatibility
Fix https://github.com/Kotlin/kotlinx.serialization/issues/107 and code reformatting
(cherry picked from commit d4c307d)
Add correct type parameter information to synthetic declarations
Needed by kapt due to https://github.com/Kotlin/kotlinx.serialization/issues/76
Make correct call to sealed class constructor
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/112
Bump version
1.2.50-eap-1 compatible
2018-09-07 21:16:54 +03:00
Leonid Startsev
5e19e89dda
Enhanced support for custom serializers definition
...
kotlin.Triple serializer
Resolving serializers for mutable collection interfaces on JS
Remove idea-related source files form maven compilation
Serialization url in plugin.xml
Removed note about JPS incompatibility
Don't use serial names in produced JS code (https://github.com/Kotlin/kotlinx.serialization/issues/43 )
Generator for calling `update` functions
Fix synthetic serialinfo implementations for 2-slots vars (double and long) (https://github.com/Kotlin/kotlinx.serialization/issues/60 )
Prohibit usage of nullable serializers for non-null fields (https://github.com/Kotlin/kotlinx.serialization/issues/59 )
Fix incorrect `this` referencing after update to 1.2.20 compiler
2018-09-07 21:16:53 +03:00
Leonid Startsev
8c4daef969
Maven and Gradle project import handlers
2018-09-07 21:16:52 +03:00