Releases: ned14/outcome
All tests passed 68bf2d671cc4a18e5aaf97be4424c0645a6ef3d1
Ported the tutorial to Outcome v2.2.
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed f9e7477dec473dcacec09d7af7b321f25b6aeab6
Initial round of upgrading tutorial and documentation for Outcome v2.2.
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed e0efc833d09928c8be137724037fb8ada587fdf7
Fix failure to set BOOSTORG_OUTCOME_DEPLOY_KEY in github actions.
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed a5c877cf287e880c527f070f776c0baf32e2a1f5
More Outcome 2.2 docs fixes.
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed 1993bb29af1ebe80e0413ecb51f3e712dfd93620
Merge pull request #242 from ecatmur/patch-1
Use __cpp_concepts feature test macro
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
v2.1.5 Boost 1.75 release
v2.1.5 11th December 2020 (Boost 1.75) [release]
THIS IS THE FINAL RELEASE OF OUTCOME V2.1, FROM NOW ON IT IS OUTCOME V2.2
Enhancements:
-
The ADL discovered event hooks have been replaced with policy-specified event hooks instead
: This is due to brittleness (where hooks would quietly
self-disable if somebody changed something), compiler bugs (a difference in compiler settings causes
the wrong hooks, or some but not all hooks, to get discovered), and end user difficulty in using
them at all. The policy-specified event hooks can be told to default to ADL discovered hooks for
backwards compatibility: setOUTCOME_ENABLE_LEGACY_SUPPORT_FOR
to less than220
to
enable emulation. -
Improve configuring
OUTCOME_GCC6_CONCEPT_BOOL
: Older GCCs had boolean based concepts syntax, whereas newer GCCs are standards conforming.
However the precise logic of when to use legacy and conforming syntax was not well understood,
which caused Outcome to fail to compile depending on what options you pass to GCC. The new logic
always uses the legacy syntax if on GCC 8 or older, otherwise we use conforming syntax if and
only if GCC is in C++ 20 mode or later. This hopefully will resolve the corner case build
failures on GCC.
Bug fixes:
-
Boost.Outcome should now compile with
BOOST_NO_EXCEPTIONS
defined
: Thanks to Emil, maintainer of Boost.Exception, making a change for me, Boost.Outcome
should now compile with C++ exceptions globally disabled. You won't be able to use
boost::exception_ptr
as it can't be included if C++ exceptions are globally disabled. -
#236
: In the Coroutine support thefinal_suspend()
was notnoexcept
, despite being required
to be so in the C++ 20 standard. This has been fixed, but only if your compiler implements
noop_coroutine
. Additionally, ifnoop_coroutine
is available, we use the much more
efficient coroutine handle returning variant ofawait_suspend()
which should significantly
improve codegen and context switching performance.
All tests passed b970251b899adc46c8d794f5218502bdcf514b32
Ported boostorg/outcome conversion script to github actions.
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed e64a5539c7b0416184cf9c7f82aeacc988b01229
try again travis
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed d184b3574262158b9cccf12967b5b0d50eb67dcb
Have travis always run the boostorg conversion.
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies:
All tests passed c7ee2ae93e3afe25aceb9ab91a4d48291aef3d3c
Fix up travis script
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies: