<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/src/catch2/internal/catch_test_case_registry_impl.hpp, branch v3.1.0</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>struct -&gt; class normalization for various interface types</title>
<updated>2022-04-11T16:32:35+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-04-10T22:00:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=8cdaebe9643f77b2e62cde01df0176d15385b12c'/>
<id>8cdaebe9643f77b2e62cde01df0176d15385b12c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Move extractClassName to the single calling TU and make it static</title>
<updated>2021-06-18T21:39:07+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2021-06-18T21:36:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=28a33497be6c6d18d9fc6e2e4cfe6ce7b50680be'/>
<id>28a33497be6c6d18d9fc6e2e4cfe6ce7b50680be</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Pass other StringRef arguments by value instead of by-ref</title>
<updated>2021-05-14T21:45:59+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2021-05-14T21:45:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=61e16416a99fe4ba48c1adfc46082276433be6c0'/>
<id>61e16416a99fe4ba48c1adfc46082276433be6c0</id>
<content type='text'>
Apart from being clearer, it also improves the overall codesize
of the implementation library, and should improve the performance
as well, by removing one level of indirection.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Apart from being clearer, it also improves the overall codesize
of the implementation library, and should improve the performance
as well, by removing one level of indirection.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add standardized copyright notice + SPDX identifier to source files</title>
<updated>2020-08-30T13:43:45+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-30T13:43:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=90aeffb97d6942d16f75a56b11e10fc0b010995a'/>
<id>90aeffb97d6942d16f75a56b11e10fc0b010995a</id>
<content type='text'>
This should also be done for test files, but that has lower priority.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This should also be done for test files, but that has lower priority.
</pre>
</div>
</content>
</entry>
<entry>
<title>Standardize include guard patterns to FILE_NAME_EXTENSION_INCLUDED</title>
<updated>2020-08-30T12:09:27+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-29T18:48:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=a822cb9717b64b3b17047fe1ab4dc727c2ff39c4'/>
<id>a822cb9717b64b3b17047fe1ab4dc727c2ff39c4</id>
<content type='text'>
This commit also strips the old copyright comment header in touched
files, as those will also be replaced with a more standardized and
machine-friendly version.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit also strips the old copyright comment header in touched
files, as those will also be replaced with a more standardized and
machine-friendly version.
</pre>
</div>
</content>
</entry>
<entry>
<title>Turn RunTests into TestRunOrder enum class</title>
<updated>2020-08-11T15:47:00+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-11T13:46:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=b0531404e4cdd31d63bebbc21d9a4556922a0626'/>
<id>b0531404e4cdd31d63bebbc21d9a4556922a0626</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Apply some IWYU suggestions</title>
<updated>2020-07-29T19:51:05+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-07-29T14:29:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ed0ea3014942a952471ca32da466f5df213b5eb2'/>
<id>ed0ea3014942a952471ca32da466f5df213b5eb2</id>
<content type='text'>
This is not nearly all of them, because IWYU does not support the
way Catch2 manages includes -- it expects that non-system includes
are done using `#include "foo/bar/baz.hpp"`, while Catch2 uses
`&lt;foo/bar/baz.hpp&gt;`. This causes trouble, because IWYU suggests
removing every single internal header, and then adding them again,
but using `""` in the include directive... the resulting suggestions
cannot be used without a lot of manual work, as they are largely
bogus.

For bonus points, IWYU also _loves_ to suggest kinda-random stdlib
headers for `size_t` and similar. Still, the resulting inclusion
graph is somewhat better than it was before.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is not nearly all of them, because IWYU does not support the
way Catch2 manages includes -- it expects that non-system includes
are done using `#include "foo/bar/baz.hpp"`, while Catch2 uses
`&lt;foo/bar/baz.hpp&gt;`. This causes trouble, because IWYU suggests
removing every single internal header, and then adding them again,
but using `""` in the include directive... the resulting suggestions
cannot be used without a lot of manual work, as they are largely
bogus.

For bonus points, IWYU also _loves_ to suggest kinda-random stdlib
headers for `size_t` and similar. Still, the resulting inclusion
graph is somewhat better than it was before.
</pre>
</div>
</content>
</entry>
<entry>
<title>Devirtualize test case registration</title>
<updated>2020-07-27T06:49:49+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-07-27T06:49:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=125d4b41643ab410545d7c1cc8dabd7f862f5277'/>
<id>125d4b41643ab410545d7c1cc8dabd7f862f5277</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace all uses of std::unique_ptr with Catch::Detail::unique_ptr</title>
<updated>2020-05-31T13:20:24+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-05-25T07:45:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=1d1ccf8f3c0c9e121b16afd4fafb850d14ef9fb0'/>
<id>1d1ccf8f3c0c9e121b16afd4fafb850d14ef9fb0</id>
<content type='text'>
Doing some benchmarking with ClangBuildAnalyzer suggests that
compiling Catch2's `SelfTest` spends 10% of the time instantiating
`std::unique_ptr` for some interface types required for registering
and running tests.

The lesser compilation overhead of `Catch::Detail::unique_ptr` should
significantly reduce that time.

The compiled implementation was also changed to use the custom impl,
to avoid having to convert between using `std::unique_ptr` and
`Catch::Detail::unique_ptr`. This will likely also improve the compile
times of the implementation, but that is less important than improving
compilation times of the user's TUs with tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Doing some benchmarking with ClangBuildAnalyzer suggests that
compiling Catch2's `SelfTest` spends 10% of the time instantiating
`std::unique_ptr` for some interface types required for registering
and running tests.

The lesser compilation overhead of `Catch::Detail::unique_ptr` should
significantly reduce that time.

The compiled implementation was also changed to use the custom impl,
to avoid having to convert between using `std::unique_ptr` and
`Catch::Detail::unique_ptr`. This will likely also improve the compile
times of the implementation, but that is less important than improving
compilation times of the user's TUs with tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Refactor some uses of virtual -&gt; override</title>
<updated>2020-05-11T14:34:55+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-05-11T14:34:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=601ca1c67095154fb864dd7d95fa647db7f8f512'/>
<id>601ca1c67095154fb864dd7d95fa647db7f8f512</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
