Skip to content

v2.0.0-develop.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@philsquared philsquared released this 17 Aug 08:15

2.0.0-develop.1

This is the first beta release of Catch2, which rebases on C++11.

It includes many changes - some breaking - including:

Internal

  • Migrated lots of code to C++11 and removed most compatibility workarounds
  • Reworked expression decomposition layer - now much simpler and less code
  • Added, and started using in some places, a StringRef, which is similar to C++17's string_view
  • Use new, rewritten, version of Clara (for command line parsing)
  • Use new, rewritten, text formatting sub-lib, TextFlow.
  • Full project now has .cpp files instead of headers with implementation - still merged down to a single header.
  • Lots of other fixes and tweaks

Features

  • Can now use commas in assertion macros (e.g. when using template argument lists)
  • Command line can now be easily extended (as Clara has a composable interface)
  • Experimental micro-benchmarking support added

Breaking

  • Removed Catch::toString() - you must now specialise Catch::StringMaker<> instead
  • -d command line option no longer takes an argument
  • Removed old, experimental, generators support (new version will be coming)
  • Changed interface of Catch::Session as it relates to Clara - in particular removed unusedTokens(), the unusedOptionBehaviour argument from applyCommandLine() and changed the type that cli() returns.
  • Removed redundant SCOPED_MSG and SCOPED_CAPTURE