Arrow 2.2.1.1
Arrow 2.2.1.1 is out! The main focus of this release is better compatibility with major releases in the Kotlin ecosystem, including Kotlin 2.3 and Jackson 3.0.
Unused return value checker certified. The new unused value checker in Kotlin 2.3 fits like a glove with the design principles behind Arrow. For this release we have enabled the "full mode", meaning not only that the Arrow codebase itself has been checked, but also that code using Arrow gets additional support from the compiler.
Alignment of exception handling. Handling exceptions in the right way is paramount to integrating with structured concurrency from Kotlin coroutines. Alas, until this release each Arrow module was doing their own thing, and it was unclear whether this behavior was consistent.
Thanks to the efforts of Youssef Shoaib,
this is no longer the case. The shared bits have been moved to a separate
arrow-exception-utils library, but they re-exposed by both arrow-core
and arrow-autoclose in their previous form, so no migration is required.
Support for Jackson 3.0.
The Jackson project is used all across
the JVM ecosystem to handle JSON. They have recently released a
new major version,
with major players like Spring
updating their dependencies.
This release of Arrow moves the main arrow-core-jackson to Jackson 3.0 APIs.
The 2.x version will still be maintained, under the arrow-core-jackson2 artifact.
Unfortunately, due to problems with publication, not all components of version 2.2.1 are available in Maven Central and Gradle Plugin Portal. We strongly recommend to use 2.2.1.1 instead.