v3.5.0
tag6c66ac23810389bb3eae150400748078a4925030
object 53d0d913a422d356b23dd927547febdf69ee9081
authorMartin Hořeňovský <martin.horenovsky@gmail.com>
Sun, 10 Dec 2023 23:55:49 +0000 (11 00:55 +0100)
v3.5.0

=== Improvements ===
* Introduced `CATCH_CONFIG_PREFIX_MESSAGES` to prefix only logging macros (#2544)
  * This means `INFO`, `UNSCOPED_INFO`, `WARN` and `CAPTURE`.
* Section hints in static analysis mode are now `const`
  * This prevents Clang-Tidy from complaining about `misc-const-correctness`.
* `from_range` generator supports C arrays and ranges that require ADL (#2737)
* Stringification support for `std::optional` now also includes `std::nullopt` (#2740)
* The Console reporter flushes output after writing benchmark runtime estimate.
  * This means that you can immediately see for how long the benchmark is expected to run.
* Added workaround to enable compilation with ICC 19.1 (#2551, #2766)
* Compiling Catch2 for XBox should work out of the box (#2772)
  * Catch2 should automatically disable getenv when compiled for XBox.
* Compiling Catch2 with exceptions disabled no longer triggers `Wunused-function` (#2726)
* **`random` Generators for integral types are now reproducible across different platforms**
  * Unlike `<rando>`, Catch2's generators also support 1 byte integral types (`char`, `bool`, ...)
* **`random` Generators for `float` and `double` are now reproducible across different platforms**
  * `long double` varies across different platforms too much to be reproducible
  * This guarantee applies only to platforms with IEEE 754 floats.

=== Fixes ===
* UDL declaration inside Catch2 are now strictly conforming to the standard
  * `operator "" _a` is UB, `operator ""_a` is fine. Seriously.
* Fixed `CAPTURE` tests failing to compile in C++23 mode (#2744)
* Fixed missing include in `catch_message.hpp` (#2758)
* Fixed `CHECK_ELSE` suppressing failure from uncaught exceptions(#2723)

=== Miscellaneous ===
* The documentation for specifying which tests to run through commandline has been completely rewritten (#2738)
* Fixed installation when building Catch2 with meson (#2722, #2742)
* Fixed `catch_discover_tests` when using custom reporter and `PRE_TEST` discovery mode (#2747)
* `catch_discover_tests` supports multi-config CMake generator in `PRE_TEST` discovery mode (#2739, #2746)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE8QyLZSqAHw/oZQgX3kgwe4sNOBoFAmV2UCQACgkQ3kgwe4sN
OBofARAAm5YGzdj9O1MDaZAts9A184FMBCsNzdL70jgD+d0gopXNn3Stfpxhy2F+
gLEq2jJgzHvXE0G2dAJkHylIcVHI9TUXxj7DdNTxBNcr4kIUzyG+LRJXHWaCY+iy
aIME1DcOSa0sMKHRqBpg1mqSRsFPxVPtCyfNmaPSwQKutc11CTeI0z7CDRfwkJVz
nZ0IoFut3RzpTA18A9La/h8Lpgx0+EL+MSSFPvYIyoRwyhys16fp9hjR4iiPPL7Y
S0y6ls3lP9z0rq87d539f+ANTHyBOpA4+G8/itOLRvOgKh6laJzlxKsOtWeTfbL5
DiObhMHxG9bs8hqmWmYInKlZWcJU2vuATlQpU25lVavyXMSMXH866Du4MTOHLeAR
LQYz+xmt7XwLL26K4t4xieOY4M8wbZbzSyy4cETbFJxmYMgZP6f63gtRnr89M8BU
2NGTGae4lsxns1E46YAvQ85aWoEPjrHcNGUgfvIeFFsoZJpkmEOV+mNCz4xPTV4d
Cl1osUBC916BkE4hO5GzVVFaPro3pitdjv031AvbVK2I3URNMqRKO6qsiLPqGerb
OsW4O3ukYl6g0V6yg8j5Kl9HHmf6ohh6o9pJ4/NRmxpDo1WWYRl+mjRD4aofN96C
Oj/pOMatYLCX1bFXQ/nWhC75Un1KXt5haEF78o+VU0J9s2vyxrI=
=8KFi
-----END PGP SIGNATURE-----