expected-lite

expected lite - Expected objects in C++11 and later in a single-file header-only library

BSL-1.0 License

Stars
377

Bot releases are hidden (Show)

expected-lite - 0.8.0 Latest Release

Published by martinmoene 4 months ago

Release 0.8.0 of expected lite contains the following.

Additions

  • Add make_unexpected() for use with std::expected (#66, thanks @psyinf)
  • Add unexpected_type (deprecated) for use with std::expected (#66, thanks @psyinf)
  • Add unexpected_type::error(), deprecate unexpected_type::value() (#66, thanks @psyinf)

Changes

  • Adapt test suite to use with std::expected.

Fixes

  • Fix definition of 'unit_select' in batch files.
  • Fix test suite's create_copyable() for use with std::expected (#66).

When std::expected is used for the implementation, the following are available via the nonstd namespace:

  • std::expected.
  • std::unexpected and alias unexpected_type.
  • std::bad_expected_access.
  • std::unexpect_t.
  • std::unexpect.
  • make_unexpected().

Full Changelog: https://github.com/martinmoene/expected-lite/compare/v0.7.0...v0.8.0

expected-lite - 0.7.0

Published by martinmoene 5 months ago

Release 0.7.0 of expected lite contains the following.

Additions

  • Add CPack packaging (#57, thanks @KOLANICH).
  • Add monadic operations per P2505 (#60, thanks @szaszm)
  • Add reference for p2505, update table 'Comparison with like types' (#60).
  • Use -Dnsel_P2505R=0 to disable monadic operations (#61, addendum to #60, thanks @szaszm).

Changes

  • Add badge 'on vcpkg' (nonstd-lite-project issue 72.
  • Update actions/checkout in GitHub Actions to v4 (#63, thanks @striezel).
  • Add (and remove again) workaround for incompatibilities between Clang and libstdc++ (#63, thanks @striezel).

Fixes

  • Fix failure to compile non-movable non-copyable expected type (#58, thanks @polasek).
  • Fix (locally disable) MSVC warning C4702: unreachable code (#65, thanks @hanusek, @szaszm, @np-c0mp1ete).

Full Changelog: https://github.com/martinmoene/expected-lite/compare/v0.6.3...v0.7.0

expected-lite - 0.6.3

Published by martinmoene over 1 year ago

Release 0.6.3 of expected lite contains the following.

Fixes

  • Fix operator==() for void 'value' type (#51, thanks @Crzyrndm).
  • Fix disabling of swap() (#50, thanks @negatratoron).
  • Fix cmake config file to use @package_nspace@ (nonstd-lite-project 68).

Changes

  • Remove Travis CI configuration and badge (#55, thanks @striezel).
  • Do not cancel all jobs in a workflow if one fails. (#54, thanks @striezel).
  • Remove gcc 8 and clang 8, 9, 10 from GitHub CI matrix (nonstd-lite-project 69).
  • Add compilation and running test for C++20 to GCC and Clang (nonstd-lite-project 64).
  • Use toplevel unit_name (nonstd-lite-project 56).
expected-lite - 0.6.2

Published by martinmoene about 2 years ago

Release 0.6.2 of expected lite contains the following.

Changes

  • Change value used with nsel_CPP20_OR_GREATER to 202002L (#49, thanks @xavier2k6).
  • Use C++20 library feature test for std::remove_cvref (#48, thanks @purpleKarrot).
  • Remove msvc (windows-2016) image from GitHub Actions (nonstd-lite-project issue 61, thanks @xavier2k6).
  • Add msvc (windows-2022) image to GitHub Actions (nonstd-lite-project issue 62).
expected-lite - 0.6.1

Published by martinmoene over 2 years ago

Release 0.6.1 of expected lite fixes the version number (#47).

Files affected:

  • CMakeLists.txt
  • conanfile.py
  • expected.hpp
expected-lite - 0.6.0

Published by martinmoene over 2 years ago

Release 0.6.0 of expected lite contains the following changes.

Additions:

  • Enable importing cmake targets from the build tree (#39, thanks @fbdtemme).
  • Add script tc-cl.bat. See also nonstd-lite-project issues 54.
  • Add nsel_CONFIG_NO_EXCEPTIONS_SEH configuration flag.
  • Update script and test for compilation without exceptions.
  • Add example/03-no-exceptions.cpp.
  • Introduce GitHub Actions CI.

Changes:

  • std::expected appears in C++23, not C++20 (#43, thanks @bigerl).
  • Allow to move-assign from move-only unexpected (#40).
  • Avoid warning -Wundef for _MSC_VER.
  • Change to use SEH at default with MSVC for no C++ exception case.
  • Replace _CPPUNWIND with _HAS_EXCEPTIONS (#27, thanks @DBJDBJ). See also nonstd-lite-project issue 48.
  • Handle lest test framework as system include to prevent warnings, use autoregister.
  • Update Readme guided by markdownlint.

Fixes:

  • Fix r-value ref miscompile on MSVC v19.22 (#41, thanks @jacobly0).
  • Fix concept checks in the assignment operators (#40, thanks @szaszm).
expected-lite - 0.5.0

Published by martinmoene almost 4 years ago

Release 0.5.0 of expected lite contains the following changes.

Additions:

  • Add tweak header support

Changes:

  • Change 'on conan' link to refer to conan center
  • Add .editorconfig
  • Add TortoiseGit integration with GitHub issues
  • Add build folder and IDE folders/files to .gitignore (.vs, .vscode, CodeBlocks)
  • Add Visual Studio 2019 to the Appveyor build matrix, nonstd lite project issue 47

Fixes:

  • Prevent detail::text() to be multiply defined (#37, thanks to @jorticus)
expected-lite - 0.4.0

Published by martinmoene over 4 years ago

[to be expanded]

This release of expected lite tags its current state. It contains numerous changes and fixes.

expected-lite - 0.3.0

Published by martinmoene over 5 years ago

[to be expanded]

This release of expected lite improves support for CMake and Conan and contains numerous other changes and fixes.

See also nonstd lite project Improve coherence between lite projects.

expected-lite - 0.2.0

Published by martinmoene almost 6 years ago

Release 0.2.0 ...

expected-lite - 0.1.0

Published by martinmoene over 6 years ago

expected lite has been re-licensed under the Boost Software License (BSL) (issue #10).

Package Rankings
Top 6.94% on Proxy.golang.org
Badges
Extracted from project README
Language License Build Status Build status Version download Conan Vcpkg Try it online Try it on godbolt online
Related Projects