<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3, branch docs/no-former-language</title>
<subtitle>Progmasoft Catch3: an independently maintained C++17 test framework with a parallel runner, property checks, snapshots and structured results.</subtitle>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/'/>
<entry>
<title>Merge branch 'devel' into docs/no-former-language</title>
<updated>2026-11-15T10:53:40+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-11-15T10:53:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=9ea8d3a88334d62711f3e9aa429c7fe4905f2ef0'/>
<id>9ea8d3a88334d62711f3e9aa429c7fe4905f2ef0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #43 from Progmasoft/release/catch3-0.4.0</title>
<updated>2026-11-15T10:53:29+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-11-15T10:53:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=8979c1caf2eee321cf497671805d2177980c421e'/>
<id>8979c1caf2eee321cf497671805d2177980c421e</id>
<content type='text'>
Release Catch3 0.4.0</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Release Catch3 0.4.0</pre>
</div>
</content>
</entry>
<entry>
<title>Allow the anchors and line breaks of the documents in markdownlint</title>
<updated>2026-11-15T09:22:19+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-11-15T09:22:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=74df225e5d893a07e7bf07f0d82eea580507489b'/>
<id>74df225e5d893a07e7bf07f0d82eea580507489b</id>
<content type='text'>
The documents keep Catch2's style, an anchor at the top of each page and
a contents list whose lines end in &lt;br&gt;; Codacy's markdownlint reported
the new contents line of the release notes as inline HTML.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The documents keep Catch2's style, an anchor at the top of each page and
a contents list whose lines end in &lt;br&gt;; Codacy's markdownlint reported
the new contents line of the release notes as inline HTML.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</pre>
</div>
</content>
</entry>
<entry>
<title>Release Catch3 0.4.0</title>
<updated>2026-11-15T09:17:43+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-11-15T09:17:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=6f4d3fa3328d6fb78f9a41f45282c11758872c9c'/>
<id>6f4d3fa3328d6fb78f9a41f45282c11758872c9c</id>
<content type='text'>
Every place that states the version says 0.4.0, written by
bazelisk run //tools:version -- 0.4.0, and the single-file distribution
carries it. The release notes describe the release: per-test coverage
with --coverage, secret-looking variables withheld from workers unless
--pass-env names them, the repository tools in C++17 under Bazel, and
versions with three numbers again.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Every place that states the version says 0.4.0, written by
bazelisk run //tools:version -- 0.4.0, and the single-file distribution
carries it. The release notes describe the release: per-test coverage
with --coverage, secret-looking variables withheld from workers unless
--pass-env names them, the repository tools in C++17 under Bazel, and
versions with three numbers again.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #41 from Progmasoft/fix/version-tool-semver</title>
<updated>2026-11-15T09:15:51+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-11-15T09:15:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ac438d0c34d89e14d51aebe3b0314c7e38000bb8'/>
<id>ac438d0c34d89e14d51aebe3b0314c7e38000bb8</id>
<content type='text'>
Number versions MAJOR.MINOR.PATCH in the version tool</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Number versions MAJOR.MINOR.PATCH in the version tool</pre>
</div>
</content>
</entry>
<entry>
<title>Drop references to the former compiler from two comments</title>
<updated>2026-11-15T09:07:30+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-11-15T09:07:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=13ecce487c3075e4ccc2f62b9c08597459d1a268'/>
<id>13ecce487c3075e4ccc2f62b9c08597459d1a268</id>
<content type='text'>
The macOS workflow and RepositoryReport.hpp explained themselves by another project; they now say what they do: macOS gets one job, and the JSON report uses the field names of RepositoryReport in camelCase.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The macOS workflow and RepositoryReport.hpp explained themselves by another project; they now say what they do: macOS gets one job, and the JSON report uses the field names of RepositoryReport in camelCase.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</pre>
</div>
</content>
</entry>
<entry>
<title>Refuse a next patch past the largest number</title>
<updated>2026-11-14T19:42:54+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-11-14T19:42:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=e2905c736cf2e36965c071c21bc7911eb3c59a7b'/>
<id>e2905c736cf2e36965c071c21bc7911eb3c59a7b</id>
<content type='text'>
NextPatch added one to the patch without a check, so a patch at
std::numeric_limits&lt;unsigned&gt;::max() wrapped to 0 and --next would have
moved the version back. It returns nothing there now; tests cover a
three- and a four-number version at the limit.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
NextPatch added one to the patch without a check, so a patch at
std::numeric_limits&lt;unsigned&gt;::max() wrapped to 0 and --next would have
moved the version back. It returns nothing there now; tests cover a
three- and a four-number version at the limit.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</pre>
</div>
</content>
</entry>
<entry>
<title>Number versions MAJOR.MINOR.PATCH in the version tool</title>
<updated>2026-11-14T19:03:45+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-11-14T19:03:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=2d21d2e0f9c6e0789e9c55d6cba611234dc61a60'/>
<id>2d21d2e0f9c6e0789e9c55d6cba611234dc61a60</id>
<content type='text'>
Progmasoft repositories use Semantic Versioning since 2026-11-12, but
//tools:version still knew the four-number counters: given 0.4.0 it
wrote 0.4.0.0 everywhere, and --next stepped the fourth number.

- A Version is three numbers; ParseVersion takes exactly three, without
  leading zeros, and FormatVersion writes three.
- --next is the next patch release. It also follows a four-number
  version as the rule says: the fourth number goes and the patch rises,
  so 0.3.0.2 is followed by 0.3.1.
- ReleaseNotesOf finds a section by the version it was published as.
  Its fallback for "D = 0" read the fourth element of what is now a
  three-element array; it is gone.
- Tests for the new parsing, NextPatch and release-note lookup;
  docs/contributing.md and the tool's usage say what the tool does.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Progmasoft repositories use Semantic Versioning since 2026-11-12, but
//tools:version still knew the four-number counters: given 0.4.0 it
wrote 0.4.0.0 everywhere, and --next stepped the fourth number.

- A Version is three numbers; ParseVersion takes exactly three, without
  leading zeros, and FormatVersion writes three.
- --next is the next patch release. It also follows a four-number
  version as the rule says: the fourth number goes and the patch rises,
  so 0.3.0.2 is followed by 0.3.1.
- ReleaseNotesOf finds a section by the version it was published as.
  Its fallback for "D = 0" read the fourth element of what is now a
  three-element array; it is gone.
- Tests for the new parsing, NextPatch and release-note lookup;
  docs/contributing.md and the tool's usage say what the tool does.

Claude-Session: https://claude.ai/code/session_01Ji7xZMYjc4zankoc7hGBE1
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #39 from Progmasoft/feature/per-test-coverage</title>
<updated>2026-11-14T13:46:04+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-11-14T13:46:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=94a996a3ceafa9f0004ffc28a7de5c543cdb51c2'/>
<id>94a996a3ceafa9f0004ffc28a7de5c543cdb51c2</id>
<content type='text'>
Keep per-test coverage with --coverage (roadmap step 4)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Keep per-test coverage with --coverage (roadmap step 4)</pre>
</div>
</content>
</entry>
<entry>
<title>Make the start lock a never-destroyed object</title>
<updated>2026-11-13T21:56:32+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-11-13T21:56:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5ad02bccfcb925df02d1273901b6e248d477c5fa'/>
<id>5ad02bccfcb925df02d1273901b6e248d477c5fa</id>
<content type='text'>
A function-local static std::mutex has an exit-time destructor, which
the macOS build rejects with -Wexit-time-destructors. The lock is now
allocated once and never destroyed, which also keeps it usable by a
thread that starts a child while the process exits.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A function-local static std::mutex has an exit-time destructor, which
the macOS build rejects with -Wexit-time-destructors. The lock is now
allocated once and never destroyed, which also keeps it usable by a
thread that starts a child while the process exits.
</pre>
</div>
</content>
</entry>
</feed>
