jackson-module-kotlin
kotlinx.serialization
Our great sponsors
- Appwrite - The open-source backend cloud platform
- Onboard AI - Learn any GitHub repo in 59 seconds
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
jackson-module-kotlin | kotlinx.serialization | |
---|---|---|
9 | 52 | |
1,073 | 4,842 | |
1.0% | 0.9% | |
8.9 | 6.4 | |
15 days ago | 5 days ago | |
Kotlin | Kotlin | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jackson-module-kotlin
-
Jackson, moshi or kotlinx.serialization?
Jackson's learning curve is a lot lower (it helps that it's older and more popular, so there's more guides online), and it has a lot more options. However, Jackson doesn't fully support Kotlin, for example: value classes. For this reason, I would avoid it.
strictNullCheck option in the Kotlin module doesn't cover non-object-field situations at all. https://github.com/FasterXML/jackson-module-kotlin/issues/479
-
From Java to Kotlin. There and back again
You should add Jackson Module Kotlin in your project. After that, you can't specify a type of object explicitly.
-
How Cloudflare security responded to log4j2 vulnerability
Not really, you just need to handle some standard types and have a good extension mechanism to let the user implement factories. That library having built in support for UUID and datetime is probably a bit much, I'd prefer a plugin like https://github.com/FasterXML/jackson-module-kotlin
-
Ktor vs Spring for creating an API
There is a bug at this very moment that makes it literally impossible to deserialize [1, 2, 3, null] into a List with Jackson's Kotlin module. Yes- even if you set KotlinModule(strictNullChecks = true). It's just broken. (Here's the link: https://github.com/FasterXML/jackson-module-kotlin/issues/479)
-
Kotlin Team AMA #3: Ask Us Anything
Got you, thanks. I didn’t mean to sound offensive - a better wording would be that they don’t seem to prioritize this part, at least based on https://github.com/FasterXML/jackson-module-kotlin/issues/199, which has one abandoned branch from a 3rd party and a couple of comments from from maintainers.
-
kotlinx.serialization 1.2 Released: High-Speed JSON Handling, Value Class Support, Overhauled Docs, and more
If you use Jackson, don't forget to include the Kotlin extensions https://github.com/FasterXML/jackson-module-kotlin
kotlinx.serialization
-
How would I serialize a JSON primitive to a class?
Have you tried this:? https://github.com/Kotlin/kotlinx.serialization/blob/master/docs/serializers.md
It might be possible with a value class
-
Is rust serde unique?
I think kotlinx.serialization might come close, but looks like custom Encoders and Decoders are still experimental.
-
Why should I use kotlinx.serialization?
This is the issue to +1 https://github.com/Kotlin/kotlinx.serialization/issues/1931
- Generate Kotlin client for a complex web API
-
Modern Android Development in 2023
Kotlin Serialization
-
Apple's Swift rewrite of its Foundation framework will be open source
Kotlin Serialization is also a newer option, but doesn't have as much traction.
-
Jackson, moshi or kotlinx.serialization?
``` see the docs
-
Connect-Web: It's time for Protobuf/gRPC to be your first choice in the browser
It makes sense for some use cases but the vast majority of use cases, parsing overhead is simply not a concern. Mobile phones are fast, networks have plenty of bandwidth (and the savings are marginal), parsers are pretty good.
But done right, binary protocols are sometimes worth the marginal savings they provide. We switched over one of our APIs to use CBOR instead of json. It's a search API that we hit a lot and I wanted to cut down on the bytesize of the responses a little. The savings are not that impressive. But I'll take 10% when i can get it.
Otherwise, this was a pretty simple change. We use kotlinx serialization in a multi-platform library. Basically, all we did is configure it to use CBOR instead of json. https://github.com/Kotlin/kotlinx.serialization/blob/master/... Half hour job. Haven't looked at it since; just works. It supports protobuf as well but it looked like more hassle to set up so we went with CBOR instead.
-
FP for web/mobile apps in 2022?
I'm very much with you on kotlinx.serialization's pain points. And unfortunately, there just doesn't seem to be much of a willingness to fix them. They seem very tied to their polymorphic/contextual serialization model, despite all the problems it causes.
What are some alternatives?
Moshi - A modern JSON library for Kotlin and Java.
klaxon - A JSON parser for Kotlin
Gson - A Java serialization/deserialization library to convert Java Objects into JSON and back
spring-native - Spring Native is now superseded by Spring Boot 3 official native support
kotlin-json - A JavaScript Object Notation library for Kotlin JVM.
avro4k - Avro support for kotlinx.serialization
compose-multiplatform - Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.
kotlinx-datetime - KotlinX multiplatform date/time library
Kotson
koin - Koin - a pragmatic lightweight dependency injection framework for Kotlin & Kotlin Multiplatform
mapstruct-examples - Examples for using MapStruct