1.0.0 - Sep 22, 2024
This is our first stable release! Thanks everyone for using FlowExt, reporting bugs, providing feedback and sending PRs.
-
Update dependencies:
-
Promote
Flow.repeat
operators to stable. -
Event.Value
andEvent.Error
are now normal classes annotated with @Poko (previously they weredata class
es).
1.0.0-RC - May 30, 2024
-
Update dependencies:
-
Promote
Flow.repeat
operators to stable.
0.8.1 - May 11, 2024
- Update dependencies:
- Kotlin
1.9.24
. - KotlinX Coroutines
1.8.1
. Gradle
to8.7
.
- Kotlin
- Add
Flow.catchAndReturn
,Flow.catchAndResume
operators. - Add
Flow.mapToResult
,Flow.mapResultCatching
,Flow.throwFailure
operators.
Flow.chunked(bufferSize: Int)
/Flow.bufferCount(bufferSize: Int)
: reduce unnecessary allocations.
Changelog relative to version 0.8.1-Beta
-
Flow.mapResultCatching
now does not catchCancellationException
thrown from thetransform
lambda.
0.8.1-Beta - Mar 23, 2024
- Update dependencies:
- Kotlin
1.9.23
. - KotlinX Coroutines
1.8.1-Beta
. Gradle
to8.7
.
- Kotlin
- Add
Flow.catchAndReturn
,Flow.catchAndResume
operators. - Add
Flow.mapToResult
,Flow.mapResultCatching
,Flow.throwFailure
operators.
0.8.0 - Feb 24, 2024
- Update dependencies:
- New: Add support for Kotlin/Wasm (
wasmJs
target) 🎉.
withLatestFrom
: fix a bug where the otherFlow
is not cancelled after the mainFlow
is completed.
0.7.5 - Jan 28, 2024
-
Update dependencies
Kotlin
to1.9.22
.
-
Optimize the implementation of
flowFromSuspend
andflowFromNonSuspend
, it is just an internal change, it does not affect the public API and behavior.
0.7.4 - Nov 12, 2023
- Update dependencies
Kotlin
to1.9.20
.
- Remove now-unsupported targets:
iosArm32
,watchosX86
.
-
Add
Flow.plus
operator, it is an alias toconcatWith
operator (thanks to @hoangchungk53qx1). -
Add
flowFromNonSuspend
, the non-suspend version offlowFromSuspend
.
0.7.3 - Oct 29, 2023
-
Update dependencies
Kotlin
to1.9.10
.Gradle
to8.4
.
-
Annotate
Symbol
andNULL_VALUE
with@DelicateFlowExtApi
.
-
Add
Flow.chunked
operator, it is an alias toFlow.bufferCount
operator. -
Add
Flow.pairwise(transform)
operator - a variant ofFlow.pairwise()
operator, which allows the transformation of the pair of values via thetransform
lambda parameter. -
Add
Flow.zipWithNext()
operator, it is an alias toFlow.pairwise()
operator. -
Add
Flow.zipWithNext(transform)
operator, it is an alias toFlow.pairwise(transform)
operator.
0.7.2 - Oct 7, 2023
- Update dependencies
Gradle
to8.3
.
- Add
Flow.ignoreElements
operator. - Add
Flow.scanWith
operator. - Add
Flow.safeCast
operator (thanks to @hoangchungk53qx1).
Flow.select
: avoid calling sub-selectors when the previous state is the same as the current state (aka.distinctUntilChanged
).
- Update dependencies
Kotlin
to1.9.0
.KotlinX Coroutines
to1.7.3
.Gradle
to8.2
.
- Add
Flow.repeat
operator.
0.6.1 - May 18, 2023
- Update dependencies
Kotlin
to1.8.21
.KotlinX Coroutines
to1.7.1
.Gradle
to8.1.1
.
0.6.0 - Mar 28, 2023
-
Update dependencies
Kotlin
to1.8.10
.KotlinX Coroutines
to1.7.0-Beta
.Gradle
to8.0.2
.
-
Only support JS IR.
-
Supports more targets:
linuxArm64
watchosDeviceArm64
androidNativeArm32
androidNativeArm64
androidNativeX86
androidNativeX64
Flow.groupBy
operator. See Readme#groupBy for more details.
0.5.0 - Nov 7, 2022
-
Update dependencies
Kotlin
to1.7.20
(The new Kotlin/Native memory manager enabled by default).Gradle
to7.5.1
.
-
Remove unnecessary
@ExperimentalCoroutinesApi
and@ExperimentalTime
onskipUntil
/dropUntil
.
Flow.select
operator (from1
to5
). See Readme#select for more details.
0.4.0 - Jul 22, 2022
-
Update
KotlinX Coroutines
to1.6.4
.Gradle
to7.5
.
-
Add
defer
.flowFromSuspend
.mapEager
,flatMapConcatEager
,flattenConcatEager
.skipUntil
,dropUntil
.pairwise
.NeverFlow
interface andNeverFlow.Companion
object.cast
,castNotNull
,castNullable
.combine
versions for6 - 12
Flow
s.
-
Refactor
neverFlow()
now returnsNeverFlow
.takeUntil
: changenotifier
's type toFlow<Any?>
-
Internal fix for
AtomicRef
: freezevalue
ifAtomicRef
is frozen. -
Support for Apple Silicon targets
iosSimulatorArm64
.macosArm64
.tvosSimulatorArm64
.watchosSimulatorArm64
.
-
Enable compatibility with non-hierarchical multiplatform projects.
0.3.0 - May 2, 2022
-
Update
Kotlin
to1.6.21
.KotlinX Coroutines
to1.6.1
.Gradle
to7.4.2
.
-
Refactor
withLatestFrom
's implementation. -
Move
NULL_VALUE
tocom.hoc081098.flowext.utils
package. -
Add
Symbol
class. -
Add
Flow.throttleTime
.Event.flatMap
.Event.valueOrDefault
.Event.valueOrElse
.race
,amb
.Flow.raceWith
,Flow.ambWith
.Flow.mapToUnit
.Flow.startWith { }
that accepts a lambda parameter.
-
Add and update docs.
-
Add more test cases, increase code coverage.
-
Internal bug fixes.
0.2.0 - Jan 3, 2022
-
Update
Kotlin
to1.6.10
.KotlinX Coroutines
to1.6.0
.Gradle
to7.3.3
.
-
Do not propagate cancellation to the upstream in Flow
flatMapFirst
operators (Related to Kotlin/kotlinx.coroutines#2964). -
Remove unnecessary
@ExperimentalCoroutinesApi
s,@ExperimentalTime
s. -
Rename
NULL_Value
toNULL_VALUE
. -
Add
Flow.mapIndexed
. -
Add
DelayStrategy
.Flow.retryWhenWithDelayStrategy
.Flow.retryWhenWithExponentialBackoff
.Flow.retryWithExponentialBackoff
.
0.1.0 - Nov 13, 2021
- Update
Kotlin
to1.5.31
.KotlinX Coroutines
to1.5.2
.Gradle
to7.3
.
- Add
bufferCount
.Event
.concat
.concatWith
.startWith
.interval
.mapTo
.materialize
.dematerialize
.neverFlow
.NULL_Value
.
- Add docs and docs site.
- Internal bug fixes.
- Test for Publishing.