Releases: stlab/libraries
v2.0.0a9
Full Changelog: v2.0.0a8...v2.0.0a9
- Rewrite and remove bad
when_any
tests that could deadlock - Updated README with a complete list of
STLAB_
CMake options - Added an option to run
STLAB_
with the minimal default executor thread pool size for testing - Corrected docs for
invoke_waiting()
- Added equality comparison to move_only test model
- Corrected all usage of
invoke_waiting()
- Attempted to use iwyu - minimal success
- Split out tuple_algorithm_test (it was included twice in futures and channels)
- Added STLAB_MINIMAL_TASK_POOL option for testing
- Changed
STLAB_NO_STD_COROUTINE
in config.hpp toSTLAB_STD_COROUTINE()
to avoid mistakes in usage.
v2.0.0.a8
What's Changed
- Static Analysis by @sean-parent in #546
- Nix an unused matrix element by @dabrahams in #548
- Update code base to pass clang-tidy by @sean-parent in #552
- Reworked future reduction by @sean-parent in #551
- Restructured CMake to simplify Windows build (and all builds) by @sean-parent in #553
- Minor fixes to await and await docs. by @sean-parent in #555
Full Changelog: v2.0.0a7...v2.0.0a8
v2.0.0a7
What's Changed
- Update layout-terminology.md by @sean-parent in #542
- Update layout-terminology.md by @sean-parent in #543
- add move implementation which asserts on providing const argument by @dhaibatc in #544
New Contributors
Full Changelog: v2.0.0a6...v2.0.0a7
v2.0.0a6
What's Changed
- namespace version bump by @sean-parent in #541
- Bumping the inline namespace version to
v2
to avoid ODR violations. - The
pre_exit
code remains atv1
(it must be bumped more carefully). - The portable default executor is moving to
v2
- which may lead to more than one thread pool for the portable instance. Pinning the version here is more difficult. - Removed dead
reset()
operations infuture
shared_base
- Documented (and assert) precondition that
future::exception()
is only invoked on a ready exception. - Made more of the tuple meta-facilities public to avoid
detail::
namespace usage in unit tests. - Restructured unit tests to avoid sleep-wait-loops.
Full Changelog: v2.0.0a5...v2.0.0a6
Fix use after move in future reduction
v2.0.0a5 Update stlab.yml
v2.0.0a4
Moved packaged tasks to move only to resolve odd copy issue on Windows.
Other general cleanup
Additional bug fixes
Some minor fixes (#537) * Minor bug fixes around operations that require mutability. * Replacing an incorrect identity function with std::identity{} * Removed unnecessary moves.
2.0.0a2
The documentation is now built with Hyde 2.0 but has not yet been updated to finalize the release.
What's Changed
- Updating documentation and documentation system to hyde 2.0 by @sean-parent in #534
Full Changelog: v2.0.0a1...v2.0.0a2
v2.0.0a1
This is a draft of version 2.0.0. Bumping the major version number is due to the breaking changes mentioned below. I'm in the process of updating the documentation to use Hyde 2.0 and moving to use GitHub Actions to build the Jekyll pages. The final release will be done when those tasks are completed. This release is for those who "just need the code".
Breaking Changes
- C++17 or later is now required. The was done to make the executors and
task<>
noexcept aware. Executors now require the tasks being passed to them arenoexcept
.package<>()
can be used to create noexceptpackaged_task<>
s. Thetask<>
interface can now require that a captured task isnoexcept
. For example,task<int(double) noexcept>
will accept a type invocable with a double, where the result is convertible to int, and is declarednoexcept
. This is statically checked. Ifnoexcept
is ommited, the task will except either a function with a matching signature,noexcept
or not. - As part of moving to C++17, the ability to configure the library to use
boost::optional
andboost::variant
has been removed.
Bug fixes and other changes are listed below.
What's Changed
- Adds a call to pre_exit() on each example using default_executor by @fpelliccioni in #500
- new API: bool packaged_task::canceled() const by @KevinHopps in #498
- Changes to support C++14 and fixed missing include file (#501) by @sean-parent in #503
- Fix name conflict with boost math in Boost <= 1.76 by @fpelliccioni in #499
- Changed CMake paths to be robust to subprojects by @laserallan in #507
- Fixes to futures by @sean-parent in #505
- Fix typo from main_scheduler_type to main_executor_type by @nickpdemarco in #516
- Revisit Reduce by @sean-parent in #521
- Add check for C++20, make ambiguous case assume 23 by @nickpdemarco in #522
- Restore Qt5 compatibility by @touraill-adobe in #524
- Minor comment fix by @sean-parent in #526
- Requiring executor tasks are noexcept. by @sean-parent in #528
- Removing use of boost::variant and optional from stlab now that it has moved to C++17 by @thinlang in #531
New Contributors
- @KevinHopps made their first contribution in #498
- @laserallan made their first contribution in #507
- @touraill-adobe made their first contribution in #524
- @thinlang made their first contribution in #531
Full Changelog: v1.7.1...v2.0.0a1