Commit Graph

211 Commits

Author SHA1 Message Date
Yan Zhulanow 1f65f8bc97 Encode all compiler plugin arguments for Android Extensions in kapt
Commas in option values breaks the option parsing in daemon (KT-20235).
2017-12-01 22:53:16 +09:00
Yan Zhulanow 425d104255 Parcelable: Convert I to Z explicitly, older Android Dex has strict checks for it (KT-20928) 2017-12-01 22:53:16 +09:00
Yan Zhulanow e28cffd0ad Parcelable: newArray() result type should be Object[] (KT-20717) 2017-12-01 22:53:15 +09:00
Yan Zhulanow 26005751d8 Parcelable: Fix compatibility with serialization plugin (KT-20742) 2017-12-01 22:53:15 +09:00
Yan Zhulanow eccc3447f6 Infrastructure: move compiler plugin tests back to their modules 2017-12-01 22:53:14 +09:00
Alexander Udalov f80c9a4692 Drop TypeMappingConfiguration.innerClassNameFactory, use default implementation
After 57d209f599, non-default behavior is no longer used.

 #KT-21453 Fixed
2017-11-28 14:15:03 +01:00
Yan Zhulanow 8c7f469030 Parcelable: Use @IgnoredOnParcel annotation instead of Transient cause it's inapplicable on properties (KT-20298) 2017-10-16 21:25:37 +03:00
Yan Zhulanow 27d3ed76a0 Android Extensions: Support non-latin identifiers (KT-20299) 2017-10-16 21:25:34 +03:00
Yan Zhulanow a63aca08f2 Parcelable: Support custom Parcelers in compiler plugin 2017-10-16 21:25:27 +03:00
Yan Zhulanow 7dbefc1613 Remove generic bound for Parceler 2017-10-16 21:25:25 +03:00
Yan Zhulanow 5acc992956 Disable uninitialized object copying checks for Parcelable writeToParcel() to createFromParcel() 2017-10-13 16:35:42 +03:00
Ilya Chernikov 1862c78bdc Fix projects for gradle integration tests 2017-09-20 11:51:44 +02:00
Ilya Chernikov 46884bec84 Add missing artifact, fix some deps and publishing 2017-09-20 11:51:38 +02:00
Ilya Chernikov a8c45819a1 Fix sources/javadoc artifactsi in gradle tools, separating android extensions runtime 2017-09-20 11:51:37 +02:00
Ilya Chernikov 0e306ac889 Fix install task config 2017-09-20 11:51:33 +02:00
Alexander Podkhalyuzin 3f8170d369 Clean idea files generated on the gradle import, add them to .gitignore 2017-09-19 23:58:27 +02:00
Ilya Chernikov deda50dbbb Continue switching projects to improved dsl: sourceSets and test running 2017-09-19 21:37:26 +02:00
Ilya Chernikov b6c255cea5 Refactor: project renaming, using improved build dsl 2017-09-19 21:37:22 +02:00
Ilya Chernikov 96d5e0bb21 Refactoring - renaming projects, applying sourceSets DSL 2017-09-19 21:37:18 +02:00
Ilya Chernikov aa4fdaa713 Implement publishing in the build 2017-09-19 21:37:13 +02:00
Ilya Chernikov 61dfb75e0e Implement Gradle Kotlin DSL build 2017-09-19 21:37:06 +02:00
Stanislav Erokhin e86d2f00ff Rename isImpl to isActual in descriptors 2017-09-15 18:25:49 +03:00
Stanislav Erokhin c8ee424f67 Rename isHeader to isExpect in descriptors 2017-09-15 18:25:41 +03:00
Yan Zhulanow 26af128694 Parcelable: produce error on "CREATOR" companion object 2017-09-14 19:36:48 +03:00
Alexander Udalov b01a3eb747 Drop JvmFileClassesProvider and inline implementations
Both of its implementations called the same static function; inline
those and move related utilities to JvmFileClassUtil
2017-09-13 15:46:36 +03:00
Yan Zhulanow d7ad973843 Kapt, minor: Remove duplicating 'visitInnerClass()' calls (rebase issue) 2017-09-12 22:17:18 +03:00
Yan Zhulanow 7b4e24a454 Android Extensions: Allow LayoutContainers in inner/local classes and objects 2017-09-12 22:07:18 +03:00
Yan Zhulanow 07be1e9d10 Android Extensions: Generate proper receiver for clearFindViewByIdCache() call (KT-19742) 2017-09-12 22:07:17 +03:00
Yan Zhulanow 3f4ddb006a Android Extensions: Fix compilation when LayoutContainer is used as an interface (KT-19753) 2017-09-12 22:07:16 +03:00
Yan Zhulanow eefb490a8a Parcelable: Use efficient serialize strategy for Java/Kotlin Parcelables only from the current source roots (KT-20029) 2017-09-12 22:07:15 +03:00
Yan Zhulanow 1b688182cd Parcelable: Use specialized write/create methods where available (KT-20057) 2017-09-12 22:07:14 +03:00
Yan Zhulanow f6d7a17227 Parcelable: Remove 'ACC_STATIC' flag from Creator class, Dalvik dex checker hates it, and it's illegal anyway (KT-20034) 2017-09-12 22:07:13 +03:00
Yan Zhulanow e0509e8c4d Parcelable: Specify declaration origin for the synthetic descriptors 2017-09-12 22:07:13 +03:00
Yan Zhulanow 033386b47d Parcelable: Do not check property types if the Parcelable class has a custom Parceler implementation (KT-20062) 2017-09-12 22:07:12 +03:00
Yan Zhulanow 89c5f78a8e Parcelable: Use Parcel methods for reading-writing primitive types (KT-20020) 2017-09-12 22:07:11 +03:00
Yan Zhulanow a03c03c427 Parcelable: Handle nullability in Parcelize Parcelable serializer (KT-20032) 2017-09-12 22:07:11 +03:00
Yan Zhulanow 88138fc420 Parcelable: Use java/lang/Enum methods to read/write enum values (KT-20022) 2017-09-12 22:07:10 +03:00
Yan Zhulanow 7b96c9a003 Parcelable: Give priority to Parcelable type over objects and enums (KT-20021) 2017-09-12 22:07:09 +03:00
Yan Zhulanow be3273a933 Parcelable: Flags argument should be propagated to the nested Parcelable's writeToParcel() (KT-20019) 2017-09-12 22:07:08 +03:00
Yan Zhulanow 3587a2a08e Parcelable: Use ClassLoader from the container class to load Parcelable (KT-20027)
When the parameter type is just "Parcelable", we would not pick the wrong (system) class loader anymore.
2017-09-12 22:07:08 +03:00
Yan Zhulanow c9ec1a2511 Parcelable: Array serializer should correctly handle wide primitive types – long, double (KT-20002) 2017-09-12 22:07:07 +03:00
Yan Zhulanow 32fc340d62 Parcelable: Parcelize overrides describeContents despite being already implemented (KT-20026) 2017-09-12 22:07:06 +03:00
Yan Zhulanow e645da64da Parcelable: Use the Parcelable implementation class as a containing declaration for Creator (KT-19899) 2017-09-12 22:07:06 +03:00
Yan Zhulanow f8ca714c45 Parcelable: Cast types deserialized with Parcel.readValue() (KT-19747) 2017-09-12 22:07:05 +03:00
Yan Zhulanow eee28d8507 Parcelable: Fix signature for Serializable Parcel serializer (KT-19749) 2017-09-12 22:07:04 +03:00
Yan Zhulanow fe3413c291 Parcelable: Add INNERCLASS metadata to Creator factory class and its outer class 2017-09-06 17:40:19 +03:00
Yan Zhulanow c330285fd0 Parcelable: Use innerClassNameFactory to figure out the internal name of the Creator class (KT-19680)
KAPT3 class builder mode in 1.1.4 replaces '$' (inner class name separators) with '/' by providing special innerClassNameFactory.
We should use it to be compatible with kapt.
2017-09-06 17:40:18 +03:00
Vyacheslav Gerasimov cb3a8d87d0 Android Extensions: Correctly handle namespaces in layout xml
#KT-19451 Fixed Target versions 1.1.5
2017-08-23 13:18:34 +03:00
Pavel V. Talanov 6424b6760f Remove StorageComponentContainerContributor::onContainerComposed
Rename addDeclarations -> registerModuleComponents
Use it to provide SamWithReceiverResolver extensions instead

Post construction on container composition can be achieved
    but manually inserting injections where it seems appropriate
    is bug prone
This fixes a bug where SamWithReceiverPlugin extension was not registered
    for some containers in IDE which led to incorrect highlighting in IDE
Add IDE test for applying SamWithReceiver plugin

 #KT-18062 Fixed
2017-08-18 19:11:25 +03:00
Yan Zhulanow 5ff014f89d Parcelable, minor: Change error message 2017-08-02 03:35:12 +03:00