diff options
| author | Leitwolf | 2026-11-15 13:53:29 +0300 |
|---|---|---|
| committer | GitHub | 2026-11-15 13:53:29 +0300 |
| commit | 8979c1caf2eee321cf497671805d2177980c421e (patch) | |
| tree | 833778532f8b9bdc637d8768f9dd080b82d647a1 | |
| parent | ac438d0c34d89e14d51aebe3b0314c7e38000bb8 (diff) | |
| parent | 74df225e5d893a07e7bf07f0d82eea580507489b (diff) | |
| download | catch3-0.4.0.tar.gz | |
Merge pull request #43 from Progmasoft/release/catch3-0.4.0HEADcatch3-0.4.0devel
Release Catch3 0.4.0
| -rw-r--r-- | .markdownlint.yaml | 9 | ||||
| -rw-r--r-- | CMakeLists.txt | 2 | ||||
| -rw-r--r-- | MODULE.bazel | 2 | ||||
| -rw-r--r-- | docs/release-notes.md | 28 | ||||
| -rw-r--r-- | extras/catch_amalgamated.cpp | 4 | ||||
| -rw-r--r-- | extras/catch_amalgamated.hpp | 2 | ||||
| -rw-r--r-- | extras/catch_amalgamated_third_party.hpp | 2 | ||||
| -rw-r--r-- | meson.build | 2 | ||||
| -rw-r--r-- | src/Progmasoft/Catch3/Version.hpp | 2 | ||||
| -rw-r--r-- | xmake.lua | 2 |
10 files changed, 46 insertions, 9 deletions
diff --git a/.markdownlint.yaml b/.markdownlint.yaml new file mode 100644 index 00000000..50376e40 --- /dev/null +++ b/.markdownlint.yaml @@ -0,0 +1,9 @@ +# SPDX-FileCopyrightText: 2026 Progmasoft <support@progmasoft.com> +# SPDX-License-Identifier: MPL-2.0 WITH AdditionRef-Progmasoft-Exception-2.0 + +# The documents keep Catch2's style: an anchor at the top of each page and a +# contents list whose lines end in <br>. +MD033: + allowed_elements: + - a + - br diff --git a/CMakeLists.txt b/CMakeLists.txt index 376e47d6..890d0be9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,7 +37,7 @@ endif() # The version is Catch3's; the Catch2 engine it is built on keeps its own in # CATCH_VERSION_MAJOR and the other macros of Progmasoft/Catch3/EngineVersionMacros.hpp. project(Catch3 - VERSION 0.3.0.2 + VERSION 0.4.0 LANGUAGES CXX HOMEPAGE_URL "https://github.com/Progmasoft/catch3" DESCRIPTION "A C++ test framework with a Catch2-compatible API, a parallel runner, property testing and snapshots." diff --git a/MODULE.bazel b/MODULE.bazel index c4196428..6e0fb394 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,4 +1,4 @@ -module(name = "catch3", version = "0.3.0.2") +module(name = "catch3", version = "0.4.0") bazel_dep(name = "bazel_skylib", version = "1.9.0") bazel_dep(name = "rules_cc", version = "0.2.17") diff --git a/docs/release-notes.md b/docs/release-notes.md index 4e2dea80..a250fc95 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -7,6 +7,7 @@ based on Catch2 3.16.1; Catch2's own history is in [its release notes](https://github.com/catchorg/Catch2/blob/devel/docs/release-notes.md). **Contents**<br> +[0.4.0](#040)<br> [0.3.0.2](#0302)<br> [0.3.0.1](#0301)<br> [0.3.0](#030)<br> @@ -14,6 +15,33 @@ based on Catch2 3.16.1; Catch2's own history is in [0.1.0](#010)<br> +## 0.4.0 + +Released 2026-11-15. + +Versions of Catch3 have three numbers again from this release on: +`MAJOR.MINOR.PATCH`, as Semantic Versioning writes them. + +### The Catch3 runner + +* `--coverage=DIR` runs every test in a process of its own and keeps what each + one reached: `DIR/coverage.json` maps every test to the lines it ran, and + `DIR/coverage.lcov` is the run combined. It reads LLVM source-based coverage + (Clang) and gcov (GCC). See [Per-test coverage](progmasoft-runner.md#per-test-coverage). +* Workers and the processes the runner starts no longer inherit the variables + whose names look like secrets (`TOKEN`, `SECRET`, `PASSWORD` and the like). + `--pass-env=NAME`, which can be repeated, or `"pass-env"` in the project + configuration hands one to the tests that need it. + See [Environment variables](progmasoft-runner.md#environment-variables). + +### Tools + +* The repository tools are C++17 and run through Bazel: + `//tools:check`, `//tools:amalgamate`, `//tools:version`, + `//tools:release_notes`, `//tools:repo_info` and `//tools:third_party`. + They replace the Python scripts of earlier releases. + + ## 0.3.0.2 Released 2026-11-01. diff --git a/extras/catch_amalgamated.cpp b/extras/catch_amalgamated.cpp index 4b928849..3f98cd4a 100644 --- a/extras/catch_amalgamated.cpp +++ b/extras/catch_amalgamated.cpp @@ -6,7 +6,7 @@ // SPDX-License-Identifier: BSL-1.0 -// Catch3 v0.3.0.2, on the Catch2 v3.16.1 engine +// Catch3 v0.4.0, on the Catch2 v3.16.1 engine // ---------------------------------------------------------- // This file is an amalgamation of multiple different files. // You probably shouldn't edit it directly. @@ -2391,7 +2391,7 @@ namespace Progmasoft::Catch3 namespace Progmasoft::Catch3 { /// The version of Catch3: of its runner, its tools and its formats. - inline constexpr const char *kVersion = "0.3.0.2"; + inline constexpr const char *kVersion = "0.4.0"; } // namespace Progmasoft::Catch3 // Copyright (c) 2026 Progmasoft. // SPDX-License-Identifier: MPL-2.0 WITH AdditionRef-Progmasoft-Exception-2.0 diff --git a/extras/catch_amalgamated.hpp b/extras/catch_amalgamated.hpp index fad2f28c..0cee5196 100644 --- a/extras/catch_amalgamated.hpp +++ b/extras/catch_amalgamated.hpp @@ -6,7 +6,7 @@ // SPDX-License-Identifier: BSL-1.0 -// Catch3 v0.3.0.2, on the Catch2 v3.16.1 engine +// Catch3 v0.4.0, on the Catch2 v3.16.1 engine // ---------------------------------------------------------- // This file is an amalgamation of multiple different files. // You probably shouldn't edit it directly. diff --git a/extras/catch_amalgamated_third_party.hpp b/extras/catch_amalgamated_third_party.hpp index 5a3aa21c..b6bb783b 100644 --- a/extras/catch_amalgamated_third_party.hpp +++ b/extras/catch_amalgamated_third_party.hpp @@ -1,4 +1,4 @@ -// Catch3 v0.3.0.2: yyjson and pugixml for catch_amalgamated.cpp +// Catch3 v0.4.0: yyjson and pugixml for catch_amalgamated.cpp // ---------------------------------------------------------- // This file is an amalgamation of src/Progmasoft/Runner/Yyjson.inl, // src/Progmasoft/PugiXml.inl and the libraries they include from diff --git a/meson.build b/meson.build index 1c3699e9..c8b816d7 100644 --- a/meson.build +++ b/meson.build @@ -8,7 +8,7 @@ project( 'catch3', 'cpp', - version: '0.3.0.2', + version: '0.4.0', license: ['BSL-1.0', 'MPL-2.0 WITH AdditionRef-Progmasoft-Exception-2.0'], # Meson 1.1 added clang-cl support for the C++ modes used by Progmasoft tests. meson_version: '>=1.1.0', diff --git a/src/Progmasoft/Catch3/Version.hpp b/src/Progmasoft/Catch3/Version.hpp index e83874f3..33ad6346 100644 --- a/src/Progmasoft/Catch3/Version.hpp +++ b/src/Progmasoft/Catch3/Version.hpp @@ -5,5 +5,5 @@ namespace Progmasoft::Catch3 { /// The version of Catch3: of its runner, its tools and its formats. - inline constexpr const char *kVersion = "0.3.0.2"; + inline constexpr const char *kVersion = "0.4.0"; } // namespace Progmasoft::Catch3 @@ -2,7 +2,7 @@ -- SPDX-License-Identifier: MPL-2.0 WITH AdditionRef-Progmasoft-Exception-2.0 set_project("Catch3") -set_version("0.3.0.2") +set_version("0.4.0") set_languages("cxx17") set_warnings("all") |