Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[KOTLIN MULTIPLATFORM] Compilation errors related to Kotlinx.serialization #8862

Open
rahul-ramanujam opened this issue Mar 1, 2021 · 4 comments

Comments

@rahul-ramanujam
Copy link

Description

I am trying to use openapi-generator for a multiplatform project and I started with the petstore api as described in this reddit post. I am unable to run ./gradlew assemble on the multiplatform project and gettin some compilation errors which seems related to Kotlinx.serialization library. I have added the different artifacts and steps followed to reproduce this error.

openapi-generator version

openapi-jar-version: 5.0.1
openapi-jar : https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.0.1/openapi-generator-cli-5.0.1.jar

OpenAPI declaration file content or url

yaml file : https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml

Command line used for generation

java -jar openapi-generator-cli.jar generate -g kotlin -i petstore.yaml --library multiplatform -o /var/tmp/kotlin/

Steps to reproduce
  1. Download openapi-generator-cli
  2. Download petstore.yaml
  3. Update distributionUrl in gradlew-wrapper.properties to distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip
  4. Update following version in build.gradle
  • kotlin_version =1.4.30
  • coroutines_version = 1.3.1
  • ktor_version = 1.5.1
  • kotlinx_version = 1.1.0-rc
  1. run ./gradlew version
Related issues/PRs

stacktrace : https://gist.github.com/RahulRvR/cc4e8bc52373baa0862f125da888c09a

Suggest a fix/enhancement
  • Could be related to the version of libraries (Kotlinx.serialization, ktor) used while generating the models. Is the possible to update the libraries before generating the code?
@etwilliams
Copy link

I'm able to build the JVM library but any iOS one fails for me as well. I think the generated source is out of data in relation to the current ktor and serialization versions.

@etwilliams
Copy link

Switching back to version openapi-generator 5.0.0 works without issues.

@etwilliams
Copy link

If want to use a newer version of Kotlin (1.4.32), check out this PR that hopefully gets merged: #9232

@837
Copy link
Contributor

837 commented Jun 14, 2021

I updated it a bit more and fixed open issues.
#9755

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants