<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3, branch fix/strict-header-warnings</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>Convert to double in the coverage report explicitly</title>
<updated>2026-10-31T17:20:48+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-31T17:20:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=e273973f9bc365a646fad427169416c37da28e98'/>
<id>e273973f9bc365a646fad427169416c37da28e98</id>
<content type='text'>
Dividing a long long by 10.0 is an implicit conversion, which fails in a
project that builds its tests with -Wimplicit-int-float-conversion and
warnings as errors, as Tala does.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Dividing a long long by 10.0 is an implicit conversion, which fails in a
project that builds its tests with -Wimplicit-int-float-conversion and
warnings as errors, as Tala does.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #23 from Progmasoft/license/exception-2.0</title>
<updated>2026-10-31T16:31:00+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-31T16:31:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=9e1687de6064756f470889e43dd69dfbb2f4ae61'/>
<id>9e1687de6064756f470889e43dd69dfbb2f4ae61</id>
<content type='text'>
Move to the Progmasoft Linking Exception, Version 2.0</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move to the Progmasoft Linking Exception, Version 2.0</pre>
</div>
</content>
</entry>
<entry>
<title>Merge devel and note the language and license change</title>
<updated>2026-10-31T14:20:18+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-31T14:20:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5a8606bb62aadb927bef5283aef804b4476fc91e'/>
<id>5a8606bb62aadb927bef5283aef804b4476fc91e</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 #22 from Progmasoft/build/cpp17</title>
<updated>2026-10-31T14:18:21+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-31T14:18:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=326ea0c0213aeecb6b984bba3dabb0ebad97679e'/>
<id>326ea0c0213aeecb6b984bba3dabb0ebad97679e</id>
<content type='text'>
Build Catch3 as C++17</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Build Catch3 as C++17</pre>
</div>
</content>
</entry>
<entry>
<title>Move to the Progmasoft Linking Exception, Version 2.0</title>
<updated>2026-10-31T10:42:35+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-31T10:42:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=31486e3217b8424809bcf129c0ef24ef5639e919'/>
<id>31486e3217b8424809bcf129c0ef24ef5639e919</id>
<content type='text'>
Version 1.1 left programs built with Progmasoft tools under MPL-2.0 duties
for the code the tools place in them, and left other cases unclear.
Version 2.0 adds a generated code permission, covers runtime and standard
libraries, compiler transformations, interfaces and examples, and settles
how a file is identified and how to tell recipients about source.

Every project SPDX expression moves to AdditionRef-Progmasoft-Exception-2.0.
The older texts stay, because released versions name them.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Version 1.1 left programs built with Progmasoft tools under MPL-2.0 duties
for the code the tools place in them, and left other cases unclear.
Version 2.0 adds a generated code permission, covers runtime and standard
libraries, compiler transformations, interfaces and examples, and settles
how a file is identified and how to tell recipients about source.

Every project SPDX expression moves to AdditionRef-Progmasoft-Exception-2.0.
The older texts stay, because released versions name them.
</pre>
</div>
</content>
</entry>
<entry>
<title>Finish the move to C++17 in POSIX code and the amalgamated files</title>
<updated>2026-10-31T10:36:43+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-31T10:36:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=afe91797e9d50cd4712d3694a2e5fedfc0b966b1'/>
<id>afe91797e9d50cd4712d3694a2e5fedfc0b966b1</id>
<content type='text'>
A lambda in the POSIX half of Process.cpp captured a structured binding,
which needs C++20 and which a Windows build never compiles. The files in
extras still held the C++20 sources, so they are generated again, and the
generator no longer says the runner needs C++20.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A lambda in the POSIX half of Process.cpp captured a structured binding,
which needs C++20 and which a Windows build never compiles. The files in
extras still held the C++20 sources, so they are generated again, and the
generator no longer says the runner needs C++20.
</pre>
</div>
</content>
</entry>
<entry>
<title>Format the sources for C++17</title>
<updated>2026-10-31T10:01:18+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-31T10:01:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=653dde1cc5a2f17faec2ed25f904de9c3cf3c8fa'/>
<id>653dde1cc5a2f17faec2ed25f904de9c3cf3c8fa</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Build Catch3 as C++17</title>
<updated>2026-10-31T10:00:24+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-31T10:00:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=8814bd0b796b2e291fa5b4a1033f0313c8a26065'/>
<id>8814bd0b796b2e291fa5b4a1033f0313c8a26065</id>
<content type='text'>
C++17 is still the widest common target, and a library built on it stays
usable from C++17 and every later standard, while C++20 would have left
out many users.

Concepts become enable_if on named traits in Detail/TypeTraits.hpp, which
also replaces std::remove_cvref_t and std::identity. std::span becomes
std::vector references, std::bit_cast becomes static_cast and memcpy,
template lambdas become helper templates, and std::erase_if, contains,
starts_with and ends_with have their C++17 forms. Random::Between no
longer uses a lambda over a constexpr local, which MSVC rejects outside
/permissive-, so the headers work under its default mode too.

Tests give up designated initializers, which MSVC refuses in C++17. CI
builds the matrix in C++17 and C++20, since the headers promise both.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
C++17 is still the widest common target, and a library built on it stays
usable from C++17 and every later standard, while C++20 would have left
out many users.

Concepts become enable_if on named traits in Detail/TypeTraits.hpp, which
also replaces std::remove_cvref_t and std::identity. std::span becomes
std::vector references, std::bit_cast becomes static_cast and memcpy,
template lambdas become helper templates, and std::erase_if, contains,
starts_with and ends_with have their C++17 forms. Random::Between no
longer uses a lambda over a constexpr local, which MSVC rejects outside
/permissive-, so the headers work under its default mode too.

Tests give up designated initializers, which MSVC refuses in C++17. CI
builds the matrix in C++17 and C++20, since the headers promise both.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #21 from Progmasoft/ci/narrow-macos</title>
<updated>2026-10-30T07:03:25+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-30T07:03:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=6a42cdf6461b2577106ef094d6f98025554b6077'/>
<id>6a42cdf6461b2577106ef094d6f98025554b6077</id>
<content type='text'>
Give macOS one CI job and stop building pull requests twice</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Give macOS one CI job and stop building pull requests twice</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'devel' into ci/narrow-macos</title>
<updated>2026-10-29T21:07:08+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-29T21:07:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5d713685c54bb491ad1bbb0fd8f80318bfaf7103'/>
<id>5d713685c54bb491ad1bbb0fd8f80318bfaf7103</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
