v0.5.2 - Oxygen:
This version is a bug fix version.
- Multicast: don't cancel the upstream sequence when a client is cancelled (#32)
- SwitchToLatest: fix a situation where child task could hang indefinitely (#20)
v0.5.1 - Nitrogen:
This version removes compilation unsafe flags
v0.5.0 - Carbon:
This version brings a lot of internal refactoring and breaking changes + some new operators.
Now swift-async-algorithms
has been anounced, this library can be seen as a companion for the Apple repo.
For now there is an overlap between both libraries, but when swift-async-algorithms
becomes stable the overlapping operators while be deprecated in AsyncExtensions
.
Nevertheless AsyncExtensions
will continue to provide the operators that the community needs and are not provided by Apple.
AsyncBufferedChannel
/AsyncThrowingBufferedChannel
: is the equivalent toAsyncChannel
from Apple. The difference is that back-pressure is handled with a stack and the send operation is not suspending.- Subjects: the
subject
suffix has been adopted to all the "hot"AsyncSequence
with a shared output. A throwing counterpart has been added. zip
andmerge
are top level functions to match Apple repo.AsyncThrowingJustSequence
: anAsyncSequence
that takes a throwing closure to compute the only element to emit.AsyncStream.pipe()
: creates andAsyncStream
by escaping theContinuation
and returning a tuple to manipulate the inputs and outputs of the stream.mapToResult()
: maps events (elements or failure) from anAsyncSequence
to aResult
. The resultingAsyncSequence
cannot fail.AsyncLazySequence
: is a renaming to match Apple repo for creating anAsyncSequence
from aSequence
.
v0.4.0 - Bore:
- AsyncStreams: new @Streamed property wrapper
- AsyncSequences: finish Timer when canceled
v0.3.0 - Beryllium:
- Operators: new Share operator
- AsyncSequences: new Timer AsyncSequence
- AsyncStreams:
send()
functions are now synchronous
v0.2.1 - Lithium:
- Enforce the call of onNext in a determinitisc way
v0.2.0 - Helium:
- AsyncStreams.CurrentValue
element
made public and available with get/set - new Multicast operator
- new Assign operator
v0.1.0 - Hydrogen:
- Implements the first set of extensions