- First public release
- Update to Kotlin 1.8.10
- JVM-specific niceness
- complete rewrite to directly encapsulate a
Kotlin.result
- Fix generics-related swift interop issues by relying on initializers rather than functions
- Kotlin 1.8.20
- Gradle 8.1.1
- fix missing
inline modifiers
- Kotlin 1.8.21
- Kotlin 1.9.0
- Kotlin 1.9.10
- Add
transform()
function to map results without nesting - Add
mapCatching()
- Implement
equals()
andhashCode()
- Kotlin 2.0
- Failure re-throws any fatal and coroutine-related exceptions
catching
function, modelling stdlib'srunCatching
, directly returning aKmmResult
- add missing
catching
variant
wrapping
function, which wraps any exception as the specified type
- add
out
qualifier to KmmResult's type parameter - add
recoverCatching
to match Kotlin'sresult
- add
callsInPlace
contracts - return result fon
onFailure
andonSuccess
- migrate to dokka 2 for documentation
- multi-module project setup
- introduce
kmmresult-test
, featuringresult should succeed
result shouldNot succeed
result shouldSucceedWith expectedValue
result.shouldSucceed()
returning the contained value
- remove Arrow dependency and import arrow's list of Fatal exceptions directly into our code
- Introduce
Result.nonFatalOrThrow
to mimic KmmResult's non-fatal-only behaviour, but without the object instantiation overhead - Introduce
carchingUnwrapped
, which mimics KmmResult's non-fatal-only behaviour, but without the object instantiation overhead
- add WasmJS target
- add WasmWasi target (not for KmmResult-test, as Kotest does not support WASI yet)
- Function Renames (old ones are still present, but deprecated)
- rename
wrapping
->catchingAs
but keep the old names as deprecated alternative- add
catchingUnwrappedAs
, which works just likecatchingAs
but on aResult
rather than aKmmResult
to avoid instantiation overhead
- add