awslabs / aws-mobile-appsync-sdk-android

Android SDK for AWS AppSync.
https://docs.amplify.aws/sdk/api/graphql/q/platform/android/
Apache License 2.0
105 stars 58 forks source link

Cannot serialize Kotlin type com.apollographql.apollo.compiler.ir.CodeGenerationIR. Reflective serialization of Kotlin classes without using kotlin-reflect has undefined and unexpected behavior. #254

Open afaktor opened 4 years ago

afaktor commented 4 years ago

Unable to build our app after upgrading to moshi version >= 1.9.0. Version 1.8.0 is the last version that seems to be compatible with the app. The app uses gen from moshi-kotlin-codegen. Full error msg: Cannot serialize Kotlin type com.apollographql.apollo.compiler.ir.CodeGenerationIR. Reflective serialization of Kotlin classes without using kotlin-reflect has undefined and unexpected behavior. Please use KotlinJsonAdapter from the moshi-kotlin artifact or use code gen from the moshi-kotlin-codegen artifact.

jamesonwilliams commented 4 years ago

Hi @afaktor, thanks for the report. I observed this same error while trying to update the project’s internal Moshi dependency to 1.9.x. Unfortunately I wasn’t able to complete the upgrade yet. Please feel free to contribute a PR. It may be useful to investigate how Apollo upgraded their dependency, if they have. (The AppSync client is based on a fork of Apollo.)

afaktor commented 4 years ago

Hi Jameson! thank you for a quick reply! We don't currently have a hard pressed need to go to 1.9.x moshi, and unfortunately will not have cycles to contribute to the Appsync SDK anytime soon.