<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/include/internal/catch_result_builder.h, branch v1.12.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>Addressed some static analysis warnings</title>
<updated>2017-07-19T07:50:08+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2017-07-19T07:50:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7a22bad76340f8b48094b46bc586e76ac9ea93ac'/>
<id>7a22bad76340f8b48094b46bc586e76ac9ea93ac</id>
<content type='text'>
Based on findings in #957
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Based on findings in #957
</pre>
</div>
</content>
</entry>
<entry>
<title>Eliminate some work when results won't be reported.</title>
<updated>2017-07-06T23:34:12+00:00</updated>
<author>
<name>Neal Coombes</name>
</author>
<published>2017-06-26T19:30:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=a53ea307239095920270af807938e7870fa36362'/>
<id>a53ea307239095920270af807938e7870fa36362</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Cache std::ostringstream between assertions.</title>
<updated>2017-06-25T13:53:59+00:00</updated>
<author>
<name>Neal Coombes</name>
</author>
<published>2017-06-23T16:31:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=396ecf6021b9c0e2b6799d091adf49b0182b180f'/>
<id>396ecf6021b9c0e2b6799d091adf49b0182b180f</id>
<content type='text'>
This is not thread safe, but I think that was already true of Catch.
The construction/destruction of the std::ostringstream is where the
vast majority of time is spent per assertion.  A simple test of
100000000 CHECK()s is reduced from around 60s to 7.4s
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is not thread safe, but I think that was already true of Catch.
The construction/destruction of the std::ostringstream is where the
vast majority of time is spent per assertion.  A simple test of
100000000 CHECK()s is reduced from around 60s to 7.4s
</pre>
</div>
</content>
</entry>
<entry>
<title>Rework of REQUIRE* changes in CATCH_CONFIG_FAST_COMPILE</title>
<updated>2017-03-29T19:12:06+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2017-03-29T19:12:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4fe2432e0512bfb735cebe04fdec8f93637c77ff'/>
<id>4fe2432e0512bfb735cebe04fdec8f93637c77ff</id>
<content type='text'>
`ResultBuilder`s destructor now checks for exceptions, preventing false
negatives. The speedup should remain the same give or take a tiny bit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`ResultBuilder`s destructor now checks for exceptions, preventing false
negatives. The speedup should remain the same give or take a tiny bit.
</pre>
</div>
</content>
</entry>
<entry>
<title>New Matchers implementation</title>
<updated>2017-02-14T09:16:54+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2017-02-08T14:17:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7fed25ad1fe47289fa12bb572f25774fc09a4664'/>
<id>7fed25ad1fe47289fa12bb572f25774fc09a4664</id>
<content type='text'>
- simpler
- less templates and machinery
- no cloning, copying or unnecessary heap allocations
- better factored
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- simpler
- less templates and machinery
- no cloning, copying or unnecessary heap allocations
- better factored
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "First cut of Evaluate refactoring to remove int specialisations, among other things"</title>
<updated>2017-02-06T22:37:23+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2017-02-06T22:37:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=2b74613c545203794d15df51ad710c36b1f0a0fe'/>
<id>2b74613c545203794d15df51ad710c36b1f0a0fe</id>
<content type='text'>
This reverts commit 39753558eb635886555a07e0fa01ee72816c06f6.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 39753558eb635886555a07e0fa01ee72816c06f6.
</pre>
</div>
</content>
</entry>
<entry>
<title>First cut of Evaluate refactoring to remove int specialisations, among other things</title>
<updated>2017-02-06T15:15:43+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2017-02-06T15:15:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=39753558eb635886555a07e0fa01ee72816c06f6'/>
<id>39753558eb635886555a07e0fa01ee72816c06f6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Various small string usage performance improvements.</title>
<updated>2017-01-15T09:05:01+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2017-01-15T08:41:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=3b98a0166f7b7196eba2ad518174d1a77165166d'/>
<id>3b98a0166f7b7196eba2ad518174d1a77165166d</id>
<content type='text'>
* Empty strings are now direct constructed as `std::string()`, not as empty string literals.
* `startsWith` and `endsWith` no longer construct new a string. This should be an improvement
for libstdc++ when using older standards, as it doesn't use SSO but COW and thus even short
strings are expensive to first create.
* Various places now use char literal instead of string literals containing single char.
** `startsWith` and `endsWith` now also have overload that takes single char.

Generally the performance improvements under VS2015 are small, as going from short string
to char is mostly meaningless because of SSO (Catch doesn't push string handling that hard)
and previous commit removed most string handling if tests pass, which is the expect case.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Empty strings are now direct constructed as `std::string()`, not as empty string literals.
* `startsWith` and `endsWith` no longer construct new a string. This should be an improvement
for libstdc++ when using older standards, as it doesn't use SSO but COW and thus even short
strings are expensive to first create.
* Various places now use char literal instead of string literals containing single char.
** `startsWith` and `endsWith` now also have overload that takes single char.

Generally the performance improvements under VS2015 are small, as going from short string
to char is mostly meaningless because of SSO (Catch doesn't push string handling that hard)
and previous commit removed most string handling if tests pass, which is the expect case.
</pre>
</div>
</content>
</entry>
<entry>
<title>lazily stringify expressions</title>
<updated>2017-01-14T20:56:16+00:00</updated>
<author>
<name>Mickey Rose</name>
</author>
<published>2017-01-09T12:23:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=a1e9b841ff500b2f39ccfd4193ae450cb653da05'/>
<id>a1e9b841ff500b2f39ccfd4193ae450cb653da05</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Stripped trailing whitespace from all source code lines</title>
<updated>2015-11-04T18:04:15+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2015-11-04T18:01:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=e91738103ce8dc6c0ca6c096c66b79d25f3c18d6'/>
<id>e91738103ce8dc6c0ca6c096c66b79d25f3c18d6</id>
<content type='text'>
(replaces need for PRs #310 and #504)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(replaces need for PRs #310 and #504)
</pre>
</div>
</content>
</entry>
</feed>
