Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/docs/release-notes.md
diff options
context:
space:
mode:
authorLeitwolf2026-10-25 10:31:36 +0300
committerGitHub2026-10-25 10:31:36 +0300
commitd2e3e074bb2e1b8ffd9fc990d0b87667ea602f58 (patch)
tree0bce4462b2e190c39b3e1c5f697e3e4abd1a5e2a /docs/release-notes.md
parent13f81a480a93807c14dddb5abdb97355ced4d4c5 (diff)
parent126dc333564cb72b5115d9a9242d66694694b6d0 (diff)
downloadcatch3-d2e3e074bb2e1b8ffd9fc990d0b87667ea602f58.tar.gz
Merge pull request #18 from Progmasoft/build/catch3-identity
Give Catch3 its own build names and headers
Diffstat (limited to 'docs/release-notes.md')
-rw-r--r--docs/release-notes.md17
1 files changed, 16 insertions, 1 deletions
diff --git a/docs/release-notes.md b/docs/release-notes.md
index 9f5a1b31..3dd4ca66 100644
--- a/docs/release-notes.md
+++ b/docs/release-notes.md
@@ -36,10 +36,25 @@ line and reporters with [a runner of its own](progmasoft-runner.md#top):
### Breaking changes
+* Catch3 has its own build and header names, so that it is never mistaken
+ for Catch2 and both can be used in one project:
+ * CMake: `find_package(Catch3)` with `Catch3::Catch3` and
+ `Catch3::Catch3WithMain`, options `CATCH3_*`, and the scripts
+ `Catch3.cmake` (`catch3_discover_tests`) and `Catch3ShardTests.cmake`
+ (`catch3_add_sharded_tests`). The `Progmasoft::Catch3` target is gone:
+ its code is part of `Catch3::Catch3`.
+ * Bazel `//:catch3` and `//:catch3_main`, Meson `catch3` and
+ `catch3-with-main`, pkg-config `catch3.pc` and `catch3-with-main.pc`.
+ * Headers moved from `catch2/` to `Progmasoft/Catch3/` with Progmasoft
+ names: `<catch2/catch_test_macros.hpp>` is
+ `<Progmasoft/Catch3/TestMacros.hpp>`, `<catch2/matchers/catch_matchers_string.hpp>`
+ is `<Progmasoft/Catch3/Matchers/String.hpp>`, and so on. Test bodies do
+ not change: the macros and the `Catch::` namespace keep their names.
+ * `ParseAndAddCatchTests.cmake`, deprecated upstream, was removed.
* Catch2's command line, reporters, `CATCH_REGISTER_REPORTER` and listing
were removed; see [the command line](command-line.md#top) and
[reports](reporters.md#top). Listeners keep working.
-* The Catch2 library is compiled as C++20; code that includes only its
+* The library is compiled as C++20; code that includes only the engine's
headers still needs C++14.
* The results model in `Progmasoft/Catch3/Results.hpp` was rewritten around
tests and attempts.