Version 0.14 of CAF has just been released. This release improves several CAF internals, fixes bugs (primarily of type-safe actors), adds an optional ASIO backend, and makes three changes to the API:
timed_sync_sendhas been removed (it offered an alternative way of defining message handlers, which is inconsistent with the rest of the API)
actor_poolwere removed and replaced by factory functions using the same name
We have also refined our policy regarding supporting compilers and improved our testing setup:
CAF always required a recent compiler and we are eager to adopt new language features and to catch up with C++14 (and C++17). On the other hand, we are aware that changing the compiler every few months is not acceptable for most users. As a compromise between progressivity and stability, we support versions of GCC and Clang that are up to two years old. Consequently, support for GCC 4.7 has been dropped with 0.14.
We are continuously working on increasing the number of distribution channels for CAF. At the moment, we provide a FreeBSD port, a Homebrew package, Biicode integration, and Linux packages via the OpenSuSE build service. You can find a full list with links etc. in the Get CAF Section of the README.
We have integrated several tools to constantly improve the code quality of
CAF. Each pushed commit to
develop is automatically tested via Jenkins on
several operating systems and compilers. Our current setup includes:
In case you are waiting for MSVC support: we are currently testing on the
latest RC from Microsoft. It appears that MSVC is not able to compile
advanced match cases and
libcaf_io does compile but its unit tests
fail. Any feedback or help to get the IO parts working (or all parts
of CAF compiling) is welcome. To check on the current progress please
visit Issue #302 on GitHub.