Releases: romshark/QuickStreams
Second Alpha Release
Second Alpha Release
This is the second alpha release version 0.2.0 including:
- Full C++ support
- A new stream operator: delay
- A new memory management model
- Several security updates and bug fixes
- A new usage example
Core Library Changes
Streams can now be created in C++ and seamlessly passed over to QML and vice versa. The internal architecture has been redesigned, all streams are now tracked by their Provider which allows for various debugging improvements and a new memory management model that works in both, the garbage collected QML as well as the manually handled C++. Memory footprint has been slightly lowered. The following common mistakes are now automatically recognized and produce a warning message:
- Attaching or binding streams to themselves
- Attaching or binding captured (non-free) streams
- Registering sequence members as initial streams of the failure and abortion sequences
- Splitting a sequence by attaching or binding multiple streams to its tail
The new stream operator delay allows delaying stream awakening for a certain amount of milliseconds. Atomic streams will now await their delay even if they're requested to abort whereas abortable, non-atomic streams won't. During the delay the stream is in the AwaitingDelay state.
Changes in Example
A new example has been added representing a network filesystem mock implemented in C++ seamlessly interacting with QML. It simulates an abortable, asynchronous, chunked file upload
with an eventual cleanup in case of both, abortion and failure.
Documentation Changes
Besides changes in the library the documentation received a few corrections and adjustments. The main introduction page has been refurbished and updated.
First Alpha Release
This release is the first alpha release implementing essential stream & sequence operators.
It includes a complete code example representing a rather complex asynchronous problem.