Releases: andreiavrammsd/cpp-channel
Releases · andreiavrammsd/cpp-channel
v1.3.1
What's Changed
- Enforce value type requirements by @andreiavrammsd in #83
Non-API Changes
- Create VS Code dev environment
- Review CMake files
- Implement realistic examples
- Cancel CI running jobs on push
- Add more benchmarks
Full Changelog: v1.3.0...v1.3.1
v1.3.0
What's Changed
- Storages by @andreiavrammsd in #73
The elements are stored in an std::queue by default. This can now be changed with custom or built-in storages:- std::queue-based storage
- std::vector-based storage
- std::array-based storage (if you don't want to use the heap)
msd::channel<int> chan;
msd::channel<int, msd::vector_storage<int>> chan;
msd::channel<int, msd::array_storage<int, 2>> chan; // or msd::static_channel<int, 2> chan;
Documentation: https://andreiavrammsd.github.io/cpp-channel/
Full Changelog: v1.2.1...v1.3.0
v1.2.1
What's Changed
- Improve integration with STD algorithms by moving values instead of copying them @andreiavrammsd in #71
Known limitation
In some situations on MSVC, an algorithm might not work, and a loop could be an alternative:
std::transform(input_chan.begin(), input_chan.end(), msd::back_inserter(output_chan))
vs
for (auto&& value : input_chan) {
output_chan.write(value);
}
Full Changelog: v1.2.0...v1.2.1
v1.2.0
What's Changed
- Implemented output iterator
std::transform(input_chan.begin(), input_chan.end(), msd::back_inserter(output_chan))
v1.1.0
What's Changed
- Add write, read, drained for better control over stopped channels
- Add static channel that allocates elements on the stack and does not throw exceptions
v1.0.1
What's Changed
- Add cmake install
v1.0.0
First stable release. See documentation.
v0.8.3
Fixes blocking iterator by returning (const) reference type from the dereference operator.
v0.8.2
v0.8.1
Add iterator reference type.
Thanks, @zack-luan!