<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3, branch build/rules-swift-windows</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>Pin rules_swift 3.4.2 so Bazel works on Windows hosts with Swift</title>
<updated>2026-10-22T23:22:49+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-22T23:22:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=82521713785fa46135c0c143e5cfb1715c210b57'/>
<id>82521713785fa46135c0c143e5cfb1715c210b57</id>
<content type='text'>
rules_swift reaches the module graph through protobuf and rules_apple,
resolved to 3.1.2. Its Windows autoconfiguration runs whenever
swiftc.exe is on PATH and, up to 3.4.1, writes a toolchain that
indexes APPLE_PLATFORMS_CONSTRAINTS with the undefined name arch, so
every Bazel build on such a host failed in analysis with "name 'arch'
is not defined". The hosted runners have no Swift, which is why CI
never saw it.

A single_version_override selects 3.4.2, the first fixed release with
the same compatibility level. It needs protobuf 29 and apple_support
1.24.2, both already satisfied by the graph (protobuf stays at 33.4);
nlohmann_json, only used by rules_swift's own tools, moves to
3.12.0.bcr.1 in the lockfile.

Verified on Windows with Swift 6.4.1 on PATH: bazel test
//tests/Progmasoft:property_tests passes, where it failed before.

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>
rules_swift reaches the module graph through protobuf and rules_apple,
resolved to 3.1.2. Its Windows autoconfiguration runs whenever
swiftc.exe is on PATH and, up to 3.4.1, writes a toolchain that
indexes APPLE_PLATFORMS_CONSTRAINTS with the undefined name arch, so
every Bazel build on such a host failed in analysis with "name 'arch'
is not defined". The hosted runners have no Swift, which is why CI
never saw it.

A single_version_override selects 3.4.2, the first fixed release with
the same compatibility level. It needs protobuf 29 and apple_support
1.24.2, both already satisfied by the graph (protobuf stays at 33.4);
nlohmann_json, only used by rules_swift's own tools, moves to
3.12.0.bcr.1 in the lockfile.

Verified on Windows with Swift 6.4.1 on PATH: bazel test
//tests/Progmasoft:property_tests passes, where it failed before.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #6 from Progmasoft/docs/progmasoft-cpp-style</title>
<updated>2026-10-18T18:05:11+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-18T18:05:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=2c23a508c95c557e2ff9ad74b517e5fc65175387'/>
<id>2c23a508c95c557e2ff9ad74b517e5fc65175387</id>
<content type='text'>
Point the Progmasoft-authored code at Progmasoft C++ Style</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Point the Progmasoft-authored code at Progmasoft C++ Style</pre>
</div>
</content>
</entry>
<entry>
<title>Point the Progmasoft-authored code at Progmasoft C++ Style</title>
<updated>2026-10-18T17:05:46+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-18T17:05:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=15a812a9d2e42727ba7af3c2d13731c2e1d9e47b'/>
<id>15a812a9d2e42727ba7af3c2d13731c2e1d9e47b</id>
<content type='text'>
The contributing guide described only the style of the code derived
from Catch2. The code under src/Progmasoft/ and tests/Progmasoft/ is
not derived from it and follows Progmasoft C++ Style
(https://github.com/Progmasoft/progmasoft-cpp), the C++ guide of the
other Progmasoft projects.

A new section under "Writing code" says so, keeps the upstream style
for the Catch2-derived code so upstream changes still apply cleanly,
and records the two deviations the Catch2 API requires: the namespace
Progmasoft::Catch3, and exceptions, which report a failed assertion and
stay inside the library.

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>
The contributing guide described only the style of the code derived
from Catch2. The code under src/Progmasoft/ and tests/Progmasoft/ is
not derived from it and follows Progmasoft C++ Style
(https://github.com/Progmasoft/progmasoft-cpp), the C++ guide of the
other Progmasoft projects.

A new section under "Writing code" says so, keeps the upstream style
for the Catch2-derived code so upstream changes still apply cleanly,
and records the two deviations the Catch2 API requires: the namespace
Progmasoft::Catch3, and exceptions, which report a failed assertion and
stay inside the library.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #5 from Progmasoft/ci/platforms-like-visual-xsharp</title>
<updated>2026-10-11T12:47:14+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-11T12:47:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=1b3c5f5b43372b6f7ba3be46dc363ebe0f83224e'/>
<id>1b3c5f5b43372b6f7ba3be46dc363ebe0f83224e</id>
<content type='text'>
Build on the Visual X# platforms; hand version updates to Renovate</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Build on the Visual X# platforms; hand version updates to Renovate</pre>
</div>
</content>
</entry>
<entry>
<title>Merge the Renovate change into this branch</title>
<updated>2026-10-11T07:11:24+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-11T07:11:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4bb272038a369d01031cbece8536e9baae95fa5b'/>
<id>4bb272038a369d01031cbece8536e9baae95fa5b</id>
<content type='text'>
The pull request that hands version updates to Renovate is folded in
here, so that the two configuration changes are tested and merged
once.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The pull request that hands version updates to Renovate is folded in
here, so that the two configuration changes are tested and merged
once.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge devel into the platforms branch</title>
<updated>2026-10-11T07:11:18+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-11T07:11:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=e7aa5ff697a27f140136d3643322301c3a811a69'/>
<id>e7aa5ff697a27f140136d3643322301c3a811a69</id>
<content type='text'>
devel gained the Catch2 3.16.1 backport, which dropped the retired
macos-14 runner from the same line this branch changes. The macOS
builds run on macos-15 and macos-26, as this branch has them. The
upstream status names the platforms that are now the gate.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
devel gained the Catch2 3.16.1 backport, which dropped the retired
macos-14 runner from the same line this branch changes. The macOS
builds run on macos-15 and macos-26, as this branch has them. The
upstream status names the platforms that are now the gate.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #4 from Progmasoft/backport/upstream-3.16.1</title>
<updated>2026-10-11T07:09:19+00:00</updated>
<author>
<name>Leitwolf</name>
</author>
<published>2026-10-11T07:09:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ce6fa1996a8e358efdcff53a7628584077d9855c'/>
<id>ce6fa1996a8e358efdcff53a7628584077d9855c</id>
<content type='text'>
Backport Catch2 3.16.1</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport Catch2 3.16.1</pre>
</div>
</content>
</entry>
<entry>
<title>Build on the platforms the Visual X# compiler builds on</title>
<updated>2026-10-10T23:58:27+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-10T23:58:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ab1214937f57fb81a56e615a0aef8269ade5da91'/>
<id>ab1214937f57fb81a56e615a0aef8269ade5da91</id>
<content type='text'>
The compiler that uses this framework first is built and tested on
Windows with the Visual Studio 2026 image, macOS 15 and 26, Ubuntu 26.04
and Fedora 43. This repository was tested on Windows Server 2022 and
2025, macOS 14, 15 and 15 on Intel, and on no Linux at all.

The Windows builds move to the windows-2025-vs2026 image, in the basic
builds and in the Xmake, Bazel and Meson builds. The macOS builds and
the sanitizer builds run on macos-15 and macos-26. A new workflow builds
and tests on Ubuntu 26.04 and, in a container, on Fedora 43, with Clang,
as C++14 and C++17, Debug and Release.

Two jobs stay on windows-2022: the Premake job generates Visual Studio
2022 projects, and the Conan job names the Visual Studio 17 generator
and the v144 runtime. Moving them means moving those tools to Visual
Studio 2026, which is a change of its own.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The compiler that uses this framework first is built and tested on
Windows with the Visual Studio 2026 image, macOS 15 and 26, Ubuntu 26.04
and Fedora 43. This repository was tested on Windows Server 2022 and
2025, macOS 14, 15 and 15 on Intel, and on no Linux at all.

The Windows builds move to the windows-2025-vs2026 image, in the basic
builds and in the Xmake, Bazel and Meson builds. The macOS builds and
the sanitizer builds run on macos-15 and macos-26. A new workflow builds
and tests on Ubuntu 26.04 and, in a container, on Fedora 43, with Clang,
as C++14 and C++17, Debug and Release.

Two jobs stay on windows-2022: the Premake job generates Visual Studio
2022 projects, and the Conan job names the Visual Studio 17 generator
and the v144 runtime. Moving them means moving those tools to Visual
Studio 2026, which is a change of its own.
</pre>
</div>
</content>
</entry>
<entry>
<title>Backport Catch2 3.16.1</title>
<updated>2026-10-10T23:56:25+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-10T23:56:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=1f78d8903c2fb18afea8c3055f8df83d8c60d9b5'/>
<id>1f78d8903c2fb18afea8c3055f8df83d8c60d9b5</id>
<content type='text'>
Review Catch2 devel through 08092139210881f01a34e60c5f2fd6afa0ea4024,
the commit of 3.16.1, and apply the eleven changes since the last
reviewed revision in upstream order:

  d7683484  better message when a reporter cannot be initialized
  ea5020f0  custom argument validation in every first-party reporter
  aa01559e  throwing-reporter test also throws in assertionEnded
  45cd3987  noexcept on handleUnexpectedInflightException
  6adbd539  MSVC optimizations enabled again after the benchmark headers
  e87f2882  no quadratic scaling for NTTP test registration
  73d546cd  REQUIRE expands its arguments fewer times under GCC and Clang
  b710039a  decomposer operators as plain functions
  f899467b  type-erased streaming of reconstructed expressions
  8f0e70ca  retired macos-14 runner dropped
  08092139  version 3.16.1 and its release notes

All of them applied to the sources without a conflict. The amalgamated
distribution under extras/ conflicted because it is generated; it is
generated again from the sources of this repository, which also brings
it up to date with fork changes it had not picked up: the list-based
stream pool, the Clang diagnostic boundary and the cassert include.

No file under src/Progmasoft changes. The fork-owned texts that name
the engine version say 3.16.1, and docs/upstream-status.md records the
review. Upstream files keep their names, licenses and compiler options.

Built with Clang 22 on Windows and tested: 148 of 149 tests pass. The
one that fails, Reporters::CrashInJunitReporter, fails the same way on
devel without this change with that compiler.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Review Catch2 devel through 08092139210881f01a34e60c5f2fd6afa0ea4024,
the commit of 3.16.1, and apply the eleven changes since the last
reviewed revision in upstream order:

  d7683484  better message when a reporter cannot be initialized
  ea5020f0  custom argument validation in every first-party reporter
  aa01559e  throwing-reporter test also throws in assertionEnded
  45cd3987  noexcept on handleUnexpectedInflightException
  6adbd539  MSVC optimizations enabled again after the benchmark headers
  e87f2882  no quadratic scaling for NTTP test registration
  73d546cd  REQUIRE expands its arguments fewer times under GCC and Clang
  b710039a  decomposer operators as plain functions
  f899467b  type-erased streaming of reconstructed expressions
  8f0e70ca  retired macos-14 runner dropped
  08092139  version 3.16.1 and its release notes

All of them applied to the sources without a conflict. The amalgamated
distribution under extras/ conflicted because it is generated; it is
generated again from the sources of this repository, which also brings
it up to date with fork changes it had not picked up: the list-based
stream pool, the Clang diagnostic boundary and the cassert include.

No file under src/Progmasoft changes. The fork-owned texts that name
the engine version say 3.16.1, and docs/upstream-status.md records the
review. Upstream files keep their names, licenses and compiler options.

Built with Clang 22 on Windows and tested: 148 of 149 tests pass. The
one that fails, Reporters::CrashInJunitReporter, fails the same way on
devel without this change with that compiler.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge devel into the Renovate branch</title>
<updated>2026-10-10T23:05:19+00:00</updated>
<author>
<name>Leitwolf11</name>
</author>
<published>2026-10-10T23:05:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=a6f9971cae971c0a181fc9f8148aacdb3e79c457'/>
<id>a6f9971cae971c0a181fc9f8148aacdb3e79c457</id>
<content type='text'>
devel gained the workflow analysis change. This branch is tested once
more against it before it merges.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
devel gained the workflow analysis change. This branch is tested once
more against it before it merges.
</pre>
</div>
</content>
</entry>
</feed>
