Skip to content

v2.0.0a1

Pre-release
Pre-release
Compare
Choose a tag to compare
@sean-parent sean-parent released this 26 Oct 00:53
· 50 commits to main since this release
12fc5a5

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 are noexcept. package<>() can be used to create noexcept packaged_task<>s. The task<> interface can now require that a captured task is noexcept. For example, task<int(double) noexcept> will accept a type invocable with a double, where the result is convertible to int, and is declared noexcept. This is statically checked. If noexceptis 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 and boost::variant has been removed.

Bug fixes and other changes are listed below.

What's Changed

New Contributors

Full Changelog: v1.7.1...v2.0.0a1