| Age | Commit message (Collapse) | Author | Files | Lines |
|
v2.13.10
Fixes
Fixed issue with catch_discover_tests when there is multiple of 256 tests
Catch2-provided main and wmain are explicitly marked as __cdecl when compiled with MSVC
Improved break-into-debugger behaviour for ARM Macs. It should now be possible to step execution after the break
Replaced deprecated std::aligned_storage
|
|
v2.13.9
Fixed issue with -# (filename-as-tag) flag when __FILE__ expands into filename without directories
Fixed CAPTURE macro not being variadic when disabled through CATCH_CONFIG_DISABLE
|
|
Bulk build on NetBSD of these packages had the same result as before
(build succeeds, no PLIST change).
|
|
v2.13.8
Fixes
* Made Approx::operator() const
* Improved pkg-config files
* Fixed warning suppression leaking out of Catch2 when compiled with
clang.exe
* The macro-generated names for things like TEST_CASE no longer create
reserved identifiers
Improvements
* Clang-tidy should no longer warn about missing virtual dispatch in
FilterGenerator's constructor
v2.13.7
Fixes
* Added missing <iterator> include in benchmarking.
* Fixed noexcept build with benchmarking enabled
* Fixed build for compilers with C++17 support but without C++17 library
support
* JUnit only uses 3 decimal places when reporting durations
* !mayfail tagged tests are now marked as skipped in JUnit reporter output
v2.13.6
Fixes
* Disabling all signal handlers no longer breaks compilation
Miscellaneous
* catch_discover_tests should handle escaped semicolon (;) better
v2.13.5
Improvements
* Detection of MAC and IPHONE platforms has been improved
* Added workaround for bug in XLC 16.1.0.1
* Add detection for LCC when it is masquerading as GCC
* Modified posix signal handling so it supports newer libcs
+ MINSIGSTKSZ was no longer usable in constexpr context.
Fixes
* Fixed compilation of benchmarking when min and max macros are defined
+ Including windows.h without NOMINMAX remains a really bad idea, don't
do it
Miscellaneous
* Catch2WithMain target (static library) is no longer built by default
+ Building it by default was at best unnecessary overhead for people not
using it, and at worst it caused trouble with install paths
+ To have it built, set CMake option CATCH_BUILD_STATIC_LIBRARY to ON
* The check whether Catch2 is being built as a subproject is now more
reliable
+ The problem was that if the variable name used internally was defined
the project including Catch2 as subproject, it would not be properly
overwritten for Catch2's CMake.
v2.13.4
Improvements
* Improved the hashing algorithm used for shuffling test cases
+ TEST_CASEs that differ only in the last character should be properly
shuffled
+ Note that this means that v2.13.4 gives you a different order of test
cases than 2.13.3, even given the same seed.
Miscellaneous
* Deprecated ParseAndAddCatchTests CMake integration
+ It is impossible to implement it properly for all the different test
case variants Catch2 provides, and there are better options provided.
+ Use catch_discover_tests instead, which uses runtime information about
available tests.
* Fixed bug in catch_discover_tests that would cause it to fail when used in
specific project structures
* Added Bazel build file
* Added an experimental static library target to CMake
|
|
All checksums have been double-checked against existing RMD160 and
SHA512 hashes
Could not be committed due to merge conflict:
devel/py-traitlets/distinfo
The following distfiles were unfetchable (note: some may be only fetched
conditionally):
./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
|
|
|
|
Fixes
Fixed possible infinite loop when combining generators with section filter (-c option) (#2025)
Miscellaneous
Fixed ParseAndAddCatchTests not finding TEST_CASEs without tags (#2055, #2056)
ParseAndAddCatchTests supports CMP0110 policy for changing behaviour of add_test (#2057)
This was the shortlived change in CMake 3.18.0 that temporarily broke ParseAndAddCatchTests
|
|
Improvements
Implemented workaround for AppleClang shadowing bug (#2030)
Implemented workaround for NVCC ICE (#2005, #2027)
Fixes
Fixed detection of std::uncaught_exceptions support under non-msvc platforms (#2021)
Fixed the experimental stdout/stderr capture under Windows (#2013)
Miscellaneous
catch_discover_tests has been improved significantly (#2023, #2039)
You can now specify which reporter should be used
You can now modify where the output will be written
WORKING_DIRECTORY setting is respected
ParseAndAddCatchTests now supports TEMPLATE_TEST_CASE macros (#2031)
Various documentation fixes and improvements (#2022, #2028, #2034)
|
|
Improvements
ParseAndAddCatchTests handles CMake v3.18.0 correctly (#1984)
Improved autodetection of std::byte (#1992)
Simplified implementation of templated test cases (#2007)
This should have a tiny positive effect on its compilation throughput
Fixes
Automatic stringification of ranges handles sentinel ranges properly (#2004)
|
|
## 2.13.0
### Improvements
* `GENERATE` can now follow a `SECTION` at the same level of nesting (#1938)
* The `SECTION`(s) before the `GENERATE` will not be run multiple times, the following ones will.
* Added `-D`/`--min-duration` command line flag (#1910)
* If a test takes longer to finish than the provided value, its name and duration will be printed.
* This flag is overriden by setting `-d`/`--duration`.
### Fixes
* `TAPReporter` no longer skips successful assertions (#1983)
## 2.12.4
### Improvements
* Added support for MacOS on ARM (#1971)
## 2.12.3
### Fixes
* `GENERATE` nested in a for loop no longer creates multiple generators (#1913)
* Fixed copy paste error breaking `TEMPLATE_TEST_CASE_SIG` for 6 or more arguments (#1954)
* Fixed potential UB when handling non-ASCII characters in CLI args (#1943)
### Improvements
* There can be multiple calls to `GENERATE` on a single line
* Improved `fno-except` support for platforms that do not provide shims for exception-related std functions (#1950)
* E.g. the Green Hills C++ compiler
* XmlReporter now also reports test-case-level statistics (#1958)
* This is done via a new element, `OverallResultsCases`
### Miscellaneous
* Added `.clang-format` file to the repo (#1182, #1920)
* Rewrote contributing docs
* They should explain the different levels of testing and so on much better
|
|
## 2.12.2
### Fixes
* Fixed compilation failure if `is_range` ADL found deleted function (#1929)
* Fixed potential UB in `CAPTURE` if the expression contained non-ASCII characters (#1925)
### Improvements
* `std::result_of` is not used if `std::invoke_result` is available (#1934)
* JUnit reporter writes out `status` attribute for tests (#1899)
* Suppresed clang-tidy's `hicpp-vararg` warning (#1921)
* Catch2 was already suppressing the `cppcoreguidelines-pro-type-vararg` alias of the warning
|
|
## 2.12.1
### Fixes
* Vector matchers now support initializer list literals better
### Improvements
* Added support for `^` (bitwise xor) to `CHECK` and `REQUIRE`
## 2.12.0
### Improvements
* Running tests in random order (`--order rand`) has been reworked significantly (#1908)
* Given same seed, all platforms now produce the same order
* Given same seed, the relative order of tests does not change if you select only a subset of them
* Vector matchers support custom allocators (#1909)
* `|` and `&` (bitwise or and bitwise and) are now supported in `CHECK` and `REQUIRE`
* The resulting type must be convertible to `bool`
### Fixes
* Fixed computation of benchmarking column widths in ConsoleReporter (#1885, #1886)
* Suppressed clang-tidy's `cppcoreguidelines-pro-type-vararg` in assertions (#1901)
* It was a false positive trigered by the new warning support workaround
* Fixed bug in test specification parser handling of OR'd patterns using escaping (#1905)
### Miscellaneous
* Worked around IBM XL's codegen bug (#1907)
* It would emit code for _destructors_ of temporaries in an unevaluated context
* Improved detection of stdlib's support for `std::uncaught_exceptions` (#1911)
|
|
## 2.11.3
### Fixes
* Fixed compilation error caused by lambdas in assertions under MSVC
## 2.11.2
### Improvements
* GCC and Clang now issue warnings for suspicious code in assertions (#1880)
* E.g. `REQUIRE( int != unsigned int )` will now issue mixed signedness comparison warning
* This has always worked on MSVC, but it now also works for GCC and current Clang versions
* Colorization of "Test filters" output should be more robust now
* `--wait-for-keypress` now also accepts `never` as an option (#1866)
* Reporters no longer round-off nanoseconds when reporting benchmarking results (#1876)
* Catch2's debug break now supports iOS while using Thumb instruction set (#1862)
* It is now possible to customize benchmark's warm-up time when running the test binary (#1844)
* `--benchmark-warmup-time {ms}`
* User can now specify how Catch2 should break into debugger (#1846)
### Fixes
* Fixes missing `<random>` include in benchmarking (#1831)
* Fixed missing `<iterator>` include in benchmarking (#1874)
* Hidden test cases are now also tagged with `[!hide]` as per documentation (#1847)
* Detection of whether libc provides `std::nextafter` has been improved (#1854)
* Detection of `wmain` no longer incorrectly looks for `WIN32` macro (#1849)
* Now it just detects Windows platform
* Composing already-composed matchers no longer modifies the partially-composed matcher expression
* This bug has been present for the last ~2 years and nobody reported it
|
|
Catch2 is a multi-paradigm test framework for C++. It also supports
Objective-C (and maybe C). It is primarily distributed as a single header file,
although certain extensions may require additional headers.
|