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

Extract Json from core artifact to own library #994

Closed
gildor opened this issue Aug 19, 2020 · 1 comment
Closed

Extract Json from core artifact to own library #994

gildor opened this issue Aug 19, 2020 · 1 comment
Assignees

Comments

@gildor
Copy link

gildor commented Aug 19, 2020

Eventually, all other formats were moved to own dependencies and now core (ex runtime) includes only Json

I propose to extract json to own library and keep core (or again, rename it back to runtime) format-agnostic.

I think it would provide such benefits as:

  • Core of kotlinx.serialization would be format agnostic and include only minimal API
  • Allow to replace Json implementation (use own fork, or even separate release cycle of core from json)
  • Less bytecode on runtime if json is not used
  • It would be always explicit operation by adding additional serialization formats to your project (or even one of modules)

Even if json is the most popular format, it's still not clear why core should include it, having special artifact kotlinx-serialization-json would be even more clear, because now if you check maven repo you can find other formats, but not Json, only some abstract core artifact

I think it should be considered before release of 1.0.0

Original discussion in Kotlin Slack: https://kotlinlang.slack.com/archives/C7A1U5PTM/p1597737420036300

@gildor gildor added the feature label Aug 19, 2020
@qwwdfsad qwwdfsad self-assigned this Sep 3, 2020
@qwwdfsad
Copy link
Collaborator

We've decided to fix it in RC2, thanks for the feedback!

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

No branches or pull requests

3 participants