jackson-module-kotlin
kotlinx.coroutines
Our great sponsors
jackson-module-kotlin | kotlinx.coroutines | |
---|---|---|
9 | 59 | |
1,097 | 12,701 | |
0.7% | 0.6% | |
9.4 | 8.9 | |
6 days ago | 2 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?
strictNullCheck option in the Kotlin module doesn't cover non-object-field situations at all. https://github.com/FasterXML/jackson-module-kotlin/issues/479
-
Strings, Please! Eliminating Data Leaks Caused by Kotlin Assertions
But, it sucked. I was constantly finding bugs related to nullability, around generics, inline/value classes, etc. And it wasn't the typical trivial ones, either. Figuring out that you're calling a Java library and encountering a "platform type" is the least problematic. My biggest struggle came from using libraries that were written in Java first, but then added a Kotlin API on top. So, my code didn't know I was dealing with a platform type and neither did I. Yet they were still broken. Some of them are broken in an unfixable way, such as JacksonXML's Kotlin module: https://github.com/FasterXML/jackson-module-kotlin/issues/479. So many Java libraries rely on reflection even when it's not obvious that they might, so you pretty much can't ever use value classes in Kotlin, including the unsigned number types.
-
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
-
Serializing and deserializing "Any" Kotlin type using jackson mapper
Did you include jackson-module-kotlin?
kotlinx.coroutines
-
Gradle: from Newbie to Strong fundamentals
Now, let's consider an example. For instance, let's create a Kotlin/JVM project with kotlinx.coroutines library as a dependency.
-
Add `statefulMap` and `statefulTransform` operator to Kotlin coroutines' Flow
Greetings community, I just submited a PR to Kotlin coroutines with two additional operators :
-
Should I choose Kotlin over Java for a new project (backend)?
The harder parts of Kotlin are going to be things like kotlinx.coroutines, but that's just a library, not a core part of the language. It's about as hard to learn as a comparable library in another language, like the Task Parallel Library in .NET.
- kotlinx.coroutines 1.7.0 released
- Is it ok to have global scopes when the coroutine I'm starting has *nothing* to do with showing UI, nor do I care about its result?
- Release 1.7.0-Beta · Kotlin/kotlinx.coroutines
- Does the documentation of async{} and launch{} apply to each other? (Aside from the difference that async {} returned a Deferred)
-
Reactive Backend Applications with Spring Boot, Kotlin and Coroutines (Part 2)
Kotlin has coroutines that are supported by the language and implemented by a library (the implementation remains platform-dependent): kotlinx.coroutines and a sandbox environment is available here to try it out.
- Kotlinx Coroutines for Kotlin 1.7.x
-
Get value from coroutine function
That said, since it seems like you're doing UI stuff (Android?), you're best off doing all of the UI code in coroutines, using Dispatchers.Main as a context (as provided by one of the platform-specific coroutine libraries), since this will guarantee that your UI code will be safely run in the UI thread.
What are some alternatives?
kotlinx.serialization - Kotlin multiplatform / multi-format serialization
kotlin-coroutines - Examples for coroutines design in Kotlin
klaxon - A JSON parser for Kotlin
kotlin - The Kotlin Programming Language.
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.
Kotson
okio - A modern I/O library for Android, Java, and Kotlin Multiplatform.
KTON - Object notation in pure Kotlin!
korim - Korim: Kotlin cORoutines IMaging, Bitmap and Vector graphics for Multiplatform Kotlin
mapstruct-examples - Examples for using MapStruct
korio - Korio: Kotlin cORoutines I/O : Virtual File System + Async/Sync Streams + Async TCP Client/Server + WebSockets for Multiplatform Kotlin 1.3