File: release_notes.html

package info (click to toggle)
boost 1.32.0-6
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 93,952 kB
  • ctags: 128,458
  • sloc: cpp: 492,477; xml: 52,125; python: 13,519; ansic: 13,013; sh: 1,773; yacc: 853; makefile: 526; perl: 418; lex: 110; csh: 6
file content (193 lines) | stat: -rw-r--r-- 11,381 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
<HTML>
<HEAD>
<TITLE>Boost Test Library: release rotes</TITLE>
<LINK rel="stylesheet" type="text/css" href="style/btl.css" media="screen">
<LINK rel="stylesheet" type="text/css" href="style/btl-print.css" media="print">
<META http-equiv="Content-Language" content="en-us">
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD>
<BODY> 
<DIV class="header"> <A href="index.html">Boost.Test</A> > <SPAN class="current_article">Release
    Notes</SPAN> </DIV> 
<DIV class="body"> <IMG src='btl1.gif' width='252' height='43' alt="Boost Test logo"> 
  <H1 class="subtitle">Release Notes</H1> 
  <P class="page-toc"><A href="#v1_32_0">Boost release 1.32.0</A></P>
  <P class="page-toc"><A href="#v1_31_0">Boost release 1.31.0</A> </P>
  <P class="page-toc"><A href="#v1_30_0">Boost release 1.30.0</A><BR> 
    <A href="#Migration">Migration guide from Boost Test v1</A> </P>
    <H2><A name="v1_32_0">Boost release 1.32.0</A></H2>
    <UL>
    <LI>Licence updated to use common Boost sotfware licence</LI>
    <LI>basic_cstring introduced and used in most places instead of std::string
      and char const*</LI>
    <LI>namespace names gets shorten; old one still supported till next release</LI>
    <LI>numerous portability workaround for several new supported configurations</LI>
    <LI>class properties facilities reworked to be more powerfull</LI>
    <LI>added proper encoding of XML PCDATA</LI>
    <LI>support for wide string comparison implemented</LI>
    </UL>
    <H2><A name="v1_31_0">Boost release 1.31.0</A></H2>
    <UL>
    <LI><A href="components/utf/components/test_case/tc_template.html">Zero arity function template based test case</A> </LI>
    <LI><A href="components/execution_monitor/execution_monitor.html#register_exception_translator">Custom
        exception translators support </A> in execution monitor and <A href="components/utf/index.html">register_exception_translator</A>      added for unit test framework </LI>
    <LI><A href="components/utf/components/test_case/abstract_interface.html">Test
    cases dependency support </A></LI>
    <LI><A href="components/utf/components/test_case/auto_register_facility.html">Added
        support for multi-module unit tests in automatic registration facility </A></LI>
    <LI>Floating point comparison algorithm reworked (Is not backward compatible!!!)
      <UL>
        <LI><u>tolerance now expected in percent units</u></LI>
          <LI>eliminated tolerance definition by number of rounding errors</LI>
          <LI>switch to comparison type enumeration instead of boolean value </LI>
      </UL>
    </LI>
    <LI><A href="usage/generic.html#t1">First failed assertion support</A></LI>
    <LI>Major
      documentation structure rework and update<BR>
      I hope you will find handy new navigation system </LI>
    <LI>Switched to new boost license</LI>
    <LI><A href="components/test_tools/custom_predicate_support.html">Added support
        for custom users predicate returning both boolean result code and possibly
    error message </A></LI>
    <LI><A href="components/test_tools/reference/BOOST_CHECK_EXCEPTION.html">BOOST_CHECK_EXCEPTION</A> test
      tool introduced - to perform complex validation of expected exception </LI>
    <LI>BOOST_IGNORE_CHECK test tool introduced - to be used with BOOST_CHECK_EXCEPTION </LI>
    <LI>Straiten return code logic for Program Execution Monitor and in case
    of failed initialization in Unit Test Framework </LI>
    <LI>Added position in the collection comparison results error message </LI>
    <LI>Disable SEH if BOOST_DISABLE_WIN32 in effect</LI>
    <LI>Como can't do structured exceptions</LI>
    <LI>Added support for catch_system_error in Test Execution Monitor</LI>
    <LI><A href="components/utf/components/test_log/custom_log_formatter.html">Move
    log formatter in public interface</A></LI>
    <LI>Custom char value log print procedures</LI>
    <LI>Support for logging variable values of types that does not support operator&lt;&lt; </LI>
    <LI>match_pattern updated to show an error mismatch snippet</LI>
    <LI>force UNIX slash for file name </LI>
    <LI>Some annoying MSVC warnings suppressed </LI>
    <LI>test_case_scope_tracker introduced for correct exception unwinding handling </LI>
    <LI>unit_test_result_tracker introduced for correct exception handling </LI>
    <LI>several minor bug and warnings fixes </LI>
  </UL>
  <H2><A name="v1_30_0">Boost release 1.30.0</A></H2>
  <UL> 
    <LI>Facility for automatic registration of unit tests is introduced<BR> 
      It was requested during original Boost Test review and now it supports
        automatic registration for free function based test cases. Here an example:<BR> 
      <PRE class="code">#<SPAN class="reserv-word">include</SPAN> &lt;boost/test/auto_unit_test.hpp&gt;

BOOST_AUTO_UNIT_TEST( test1 )
{
  BOOST_CHECK( true );
}

BOOST_AUTO_UNIT_TEST( test2 )
{
  BOOST_CHECK( true );
}</PRE> 
    </LI> 
    <LI>XML log format is introduced<BR> 
      Now user willing to automate errors processing could get a log in XML format.
        Command line switch is introduced that manage log format:<BR> 
      --log_format=[XML|HRF] will force XML or human readable format respectively</LI> 
    <LI>XML report format is introduced<BR> 
      Now user willing to automate results analysis could get a result report
        in XML format. Command line switch is introduced that manage report format:<BR> 
      --report_format=[XML|HRF] will force XML or human readable format respectively</LI> 
    <LI>BOOST_CHECK_NO_THROW test tool is introduced</LI> 
    <LI>BOOST_BITWISE_EQUAL test tool is introduced</LI> 
    <LI>libraries file names changed to:<BR> 
      boost_prg_exec_monitor<BR> 
      boost_test_exec_monitor<BR> 
      boost_unit_test_framework</LI> 
    <LI>Components examples and test documentation page is introduced<BR> 
      Now all test/examples links lead to this page that has summary information
        about all of them, that include expected output, type of test and so
    on</LI> 
    <LI>Catch system errors switch introduced<BR> 
      This will work among the lines described in <A href="http://lists.boost.org/MailArchives/boost/msg40028.php"> http://lists.boost.org/MailArchives/boost/msg40028.php</A><BR> 
      Environment variable name: BOOST_TEST_CATCH_SYSTEM_ERRORS[=&quot;no&quot;]<BR> 
      Unit test framework command line argument: --catch_system_errors[=&quot;no&quot;]</LI> 
    <LI>Added building dynamic libraries into Jamfile</LI> 
    <LI>MS C runtime debug hooks introduced<BR> 
      It allows to catch _ASSERT bases assertion for MSVC</LI> 
    <LI>SIGABRT catch added</LI> 
    <LI>Eliminated NULLs all over the place<BR> 
      I switched to use typedef c_string literal instead of char const* and to
        c_string literal() instead of NULL. Different definition of NULL symbol
        causing small problems for some compilers</LI> 
    <LI>class wrapstrstream separated in standalone file and renamed to wrap_stringstream<BR> 
      For now it will be located in test/detail. Once I prepare doc page for
        it I will present it for adding into utility</LI> 
    <LI>unit_test_result_saver introduced to properly managed reset_current_test_set
      calls in case of exceptions</LI> 
    <LI>switch back to use scoped_ptr instead of raw test_suite pointer in unit_test_main.cpp</LI> 
    <LI>BOOST_CPP_MAIN_CONFIRMATION renamed to BOOST_PRG_MON_CONFIRM and changed
      it's logic a bit<BR> 
      It now should have value &quot;no&quot; to turn off pass confirmation</LI> 
    <LI>added tests for auto unit test facility and catching assert statements</LI> 
    <LI>Jamfile added info examples directory</LI> 
    <LI>Added example input for the unit_test_example5</LI> 
    <LI>Command line option --output_format is introduced that both log/report
      format simultaneously</LI> 
    <LI>Allows to perform bitwise comparisons of the two arguments provided.
      Will report as many errors as many bits mismatch. Mismatch position is
      reported.</LI> 
    <LI>Documentation default palette changed to white</LI> 
    <LI>Signal handling selection algorithm fixed<BR> 
      BOOST_HAS_SIGACTION is used to select sigaction based signal handling alternative.
        It allowed use of signal handling with gcc on win32 platform.</LI> 
    <LI>C strings usage in minimized as much as possible</LI> 
    <LI>class_properties header modified to use Boost.Preprocessor for friends
      declaration</LI> 
    <LI>other minor code/doc changes and bug fixes</LI> 
  </UL> 
  <H2><A name="Migration">Boost Test migration guide</A></H2> 
  <P class="first-line-indented">This version of Boost.Test library substitute
    the original testing library used in a Boost. These are several simple steps
    you need to follow to smoothly migrate to the latest software.</P> 
  <P class="first-line-indented">If your code were using the original version
    of cpp_main facility, to migrate you will need to delete the inclusion of
    the &lt;boost/test/cpp_main.cpp&gt;, since this file is not present any more.
    After that you have following choices:</P> 
  <UL> 
    <LI>Link with Program Execution Monitor (exact library name depends on compiler
      you are using, but most probably it will be libboost_prg_exec_monitor.lib). </LI> 
    <LI>Include &lt;boost/test/included/prg_exec_monitor.hpp&gt;, in which case
      you need not link with precompiled component but it may incur probably
      some compile time overhead.</LI> 
  </UL> 
  <P class="first-line-indented">If your code were using the original version
    of test_main and test tools facilitates of Boost.Test library, to migrate
    to use of latest one you have following choices:</P> 
  <UL> 
    <LI>Without changing of the code that were using Boost.Test facilities link
      with Test Execution Monitor (exact library name depends on compiler you
      are using, but most probably it will be libtest_exec_monitor.lib).</LI> 
    <LI>Include &lt;boost/test/included/test_exec_monitor.hpp&gt;, in which case
      you need not link with precompiled component but it may incur probably
      some compile time overhead. Definition of BOOST_INCLUDE_MAIN could be deleted
      either.</LI> 
    <LI>Include &lt;boost/test/minimal.hpp&gt;, in which case you need not link
      with precompiled component and it most probably does not incur a compile
      time overhead, but you will be limited to the set of features defined in
      the original test library. Definition of BOOST_INCLUDE_MAIN could be deleted
      either. Would you decide in a future to use any of newer Boost Test features
      you will be enforced to snitch to one the two chaises above. </LI> 
  </UL> 
</DIV> 
<DIV class="footer"> 
  <DIV class="footer-body"> 
    <P> &copy <A name="Copyright">Copyright</A> <A href='mailto:boost-test at emailaccount dot com (please unobscure)'>Gennadiy
        Rozental</A> 2001-2004. <BR> 
      Distributed under the Boost Software License, Version 1.0.
      (See accompanying file <A href="../../../LICENSE_1_0.txt">LICENSE_1_0.txt</A> or
      copy at <A href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</A>)</P> 
    <P>Revised:
      <!-- #BeginDate format:Sw1 -->28 October, 2004<!-- #EndDate --> 
    </P> 
  </DIV> 
</DIV> 
</BODY>
</HTML>