• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html>
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5<title>Release Notes</title>
6<link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css">
7<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
8<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
9<link rel="up" href="../boost_units.html" title="Chapter 43. Boost.Units 1.1.0">
10<link rel="prev" href="version_id.html" title="Version Info">
11<link rel="next" href="TODO.html" title="TODO">
12</head>
13<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
14<table cellpadding="2" width="100%"><tr>
15<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td>
16<td align="center"><a href="../../../index.html">Home</a></td>
17<td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td>
18<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
19<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
20<td align="center"><a href="../../../more/index.htm">More</a></td>
21</tr></table>
22<hr>
23<div class="spirit-nav">
24<a accesskey="p" href="version_id.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../boost_units.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="TODO.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
25</div>
26<div class="section">
27<div class="titlepage"><div><div><h2 class="title" style="clear: both">
28<a name="boost_units.ReleaseNotes"></a><a class="link" href="ReleaseNotes.html" title="Release Notes">Release Notes</a>
29</h2></div></div></div>
30<p>
31      1.2 (March 2010)
32    </p>
33<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
34          Added autoprefix ready for Boost 1.43
35        </li></ul></div>
36<p>
37      1.0.0 (August 1, 2008) :
38    </p>
39<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
40          Initial release with Boost 1.36
41        </li></ul></div>
42<p>
43      0.7.1 (March 14, 2007) :
44    </p>
45<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
46<li class="listitem">
47          Boost.Typeof emulation support.
48        </li>
49<li class="listitem">
50          attempting to rebind a heterogeneous_system to a different set of dimensions
51          now fails.
52        </li>
53<li class="listitem">
54          cmath.hpp now works with como-win32.
55        </li>
56<li class="listitem">
57          minor changes to the tests and examples to make msvc 7.1 happy.
58        </li>
59</ul></div>
60<p>
61      0.7.0 (March 13, 2007) :
62    </p>
63<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
64<li class="listitem">
65          heterogeneous and mixed system functionality added.
66        </li>
67<li class="listitem">
68          added fine-grained implicit unit conversion on a per fundamental dimension
69          basis.
70        </li>
71<li class="listitem">
72          added a number of utility metafunction classes and predicates.
73        </li>
74<li class="listitem">
75          <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.operators_hpp" title="Header &lt;boost/units/operators.hpp&gt;">boost/units/operators.hpp</a></code>
76          now uses <code class="computeroutput"><span class="identifier">BOOST_TYPEOF</span></code> when
77          possible.
78        </li>
79<li class="listitem">
80          angular units added in <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.systems.angle.gradians_hpp" title="Header &lt;boost/units/systems/angle/gradians.hpp&gt;">boost/units/systems/angle/gradians.hpp</a></code>
81          and <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.systems.angle.gradians_hpp" title="Header &lt;boost/units/systems/angle/gradians.hpp&gt;">boost/units/systems/angle/gradians.hpp</a></code>.
82          Implicit conversion of radians between trigonometric, SI, and CGS systems
83          is allowed.
84        </li>
85<li class="listitem">
86          a variety of <span class="underline"><code class="computeroutput"><a class="link" href="../boost/units/unit.html" title="Class template unit">unit</a></code></span>
87          and <span class="underline"><code class="computeroutput"><a class="link" href="../boost/units/quantity.html" title="Class template quantity">quantity</a></code></span>
88          tests added.
89        </li>
90<li class="listitem">
91          examples now provide self-tests.
92        </li>
93</ul></div>
94<p>
95      0.6.2 (February 22, 2007) :
96    </p>
97<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
98<li class="listitem">
99          changed template order in <code class="computeroutput"><span class="identifier">unit</span></code>
100          so dimension precedes unit system
101        </li>
102<li class="listitem">
103          added <code class="computeroutput"><span class="identifier">homogeneous_system</span><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;</span></code> for unit systems
104        </li>
105<li class="listitem">
106          incorporated changes to <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.dimension_hpp" title="Header &lt;boost/units/dimension.hpp&gt;">boost/units/dimension.hpp</a></code>
107          (compile-time sorting by predicate), <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.conversion_hpp" title="Header &lt;boost/units/conversion.hpp&gt;">boost/units/conversion.hpp</a></code>
108          (thread-safe implementation of quantity conversions), and <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.io_hpp" title="Header &lt;boost/units/io.hpp&gt;">boost/units/io.hpp</a></code>
109          (now works with any <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_ostream</span></code>)
110          by SW
111        </li>
112<li class="listitem">
113          added abstract units in <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.systems.abstract_hpp" title="Header &lt;boost/units/systems/abstract.hpp&gt;">boost/units/systems/abstract.hpp</a></code>
114          to allow abstract dimensional analysis
115        </li>
116<li class="listitem">
117          new example demonstrating implementation of code based on requirements
118          from Michael Fawcett (<a href="../../../libs/units/example/radar_beam_height.cpp" target="_top">radar_beam_height.cpp</a>)
119        </li>
120</ul></div>
121<p>
122      0.6.1 (February 13, 2007) :
123    </p>
124<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
125<li class="listitem">
126          added metafunctions to test if a type is
127          <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
128<li class="listitem">
129                a valid dimension list (<code class="computeroutput"><span class="identifier">is_dimension_list</span><span class="special">&lt;</span><span class="identifier">D</span><span class="special">&gt;</span></code>)
130              </li>
131<li class="listitem">
132                a unit (<code class="computeroutput"><span class="identifier">is_unit</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code>
133                and <code class="computeroutput"><span class="identifier">is_unit_of_system</span><span class="special">&lt;</span><span class="identifier">U</span><span class="special">,</span><span class="identifier">System</span><span class="special">&gt;</span></code>)
134              </li>
135<li class="listitem">
136                a quantity (<code class="computeroutput"><span class="identifier">is_quantity</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code> and <code class="computeroutput"><span class="identifier">is_quantity_of_system</span><span class="special">&lt;</span><span class="identifier">Q</span><span class="special">,</span><span class="identifier">System</span><span class="special">&gt;</span></code>)
137              </li>
138</ul></div>
139        </li>
140<li class="listitem">
141          quantity conversion factor is now computed at compile time
142        </li>
143<li class="listitem">
144          static constants now avoid ODR problems
145        </li>
146<li class="listitem">
147          unit_example_14.cpp now uses Boost.Timer
148        </li>
149<li class="listitem">
150          numerous minor fixes suggested by SW
151        </li>
152</ul></div>
153<p>
154      0.6.0 (February 8, 2007) :
155    </p>
156<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
157          incorporated Steven Watanabe's optimized code for dimension.hpp, leading
158          to <span class="bold"><strong>dramatic</strong></span> decreases in compilation time
159          (nearly a factor of 10 for unit_example_4.cpp in my tests).
160        </li></ul></div>
161<p>
162      0.5.8 (February 7, 2007) :
163    </p>
164<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
165<li class="listitem">
166          fixed <code class="computeroutput"><span class="preprocessor">#include</span></code> in <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.systems.si.base_hpp" title="Header &lt;boost/units/systems/si/base.hpp&gt;">boost/units/systems/si/base.hpp</a></code>
167          (thanks to Michael Fawcett and Steven Watanabe)
168        </li>
169<li class="listitem">
170          removed references to obsolete <code class="computeroutput"><span class="identifier">base_type</span></code>
171          in <span class="underline">__unit_info</span> (thanks to Michael
172          Fawcett)
173        </li>
174<li class="listitem">
175          moved functions in <code class="computeroutput"><a class="link" href="Reference.html#header.boost.units.cmath_hpp" title="Header &lt;boost/units/cmath.hpp&gt;">boost/units/cmath.hpp</a></code>
176          into <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">units</span></code> namespace (thanks to Steven Watanabe)
177        </li>
178<li class="listitem">
179          fixed <code class="computeroutput"><span class="preprocessor">#include</span></code> guards
180          to be consistently named <code class="computeroutput"><span class="identifier">BOOST_UNITS_XXX</span></code>
181          (thanks to Steven Watanabe)
182        </li>
183</ul></div>
184<p>
185      0.5.7 (February 5, 2007) :
186    </p>
187<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
188<li class="listitem">
189          changed quantity conversion helper to increase flexibility
190        </li>
191<li class="listitem">
192          minor documentation changes
193        </li>
194<li class="listitem">
195          submitted for formal review as a Boost library
196        </li>
197</ul></div>
198<p>
199      0.5.6 (January 22, 2007) :
200    </p>
201<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
202<li class="listitem">
203          added IEEE 1541 standard binary prefixes along with SI prefixes to and
204          extended algebra of <code class="computeroutput"><span class="identifier">scale</span></code>
205          and <code class="computeroutput"><span class="identifier">scaled_value</span></code> classes
206          (thanks to Kevin Lynch)
207        </li>
208<li class="listitem">
209          split SI units into separate header files to minimize the "kitchen
210          sink" include problem (thanks to Janek Kozicki)
211        </li>
212<li class="listitem">
213          added convenience classes for declaring fundamental dimensions and composite
214          dimensions with integral powers (<code class="computeroutput"><span class="identifier">fundamental_dimension</span></code>
215          and <code class="computeroutput"><span class="identifier">composite_dimension</span></code>
216          respectively)
217        </li>
218</ul></div>
219<p>
220      0.5.5 (January 18, 2007) :
221    </p>
222<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
223<li class="listitem">
224          template parameter order in <code class="computeroutput"><span class="identifier">quantity</span></code>
225          switched and default <code class="computeroutput"><span class="identifier">value_type</span></code>
226          of <code class="computeroutput"><span class="keyword">double</span></code> added (thanks to
227          Andrey Semashev and Paul Bristow)
228        </li>
229<li class="listitem">
230          added implicit <code class="computeroutput"><span class="identifier">value_type</span></code>
231          conversion where allowed (thanks to Andrey Semashev)
232        </li>
233<li class="listitem">
234          added <code class="computeroutput"><span class="identifier">quantity_cast</span></code> for
235          three cases (thanks to Andrey Semashev):
236          <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
237<li class="listitem">
238                constructing <code class="computeroutput"><span class="identifier">quantity</span></code>
239                from raw <code class="computeroutput"><span class="identifier">value_type</span></code>
240              </li>
241<li class="listitem">
242                casting from one <code class="computeroutput"><span class="identifier">value_type</span></code>
243                to another
244              </li>
245<li class="listitem">
246                casting from one <code class="computeroutput"><span class="identifier">unit</span></code>
247                to another (where conversion is allowed)
248              </li>
249</ul></div>
250        </li>
251<li class="listitem">
252          added<code class="computeroutput"> <span class="identifier">metre</span></code> and <code class="computeroutput"><span class="identifier">metres</span></code> and related constants to the SI
253          system for the convenience of our Commonwealth friends...
254        </li>
255</ul></div>
256<p>
257      0.5.4 (January 12, 2007) :
258    </p>
259<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
260<li class="listitem">
261          completely reimplemented unit conversion to allow for arbitrary unit conversions
262          between systems
263        </li>
264<li class="listitem">
265          strict quantity construction is default; quantities can be constructed
266          from bare values by using static member <code class="computeroutput"><span class="identifier">from_value</span></code>
267        </li>
268</ul></div>
269<p>
270      0.5.3 (December 12, 2006) :
271    </p>
272<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
273<li class="listitem">
274          added Boost.Serialization support to <code class="computeroutput"><span class="identifier">unit</span></code>
275          and <code class="computeroutput"><span class="identifier">quantity</span></code> classes
276        </li>
277<li class="listitem">
278          added option to enforce strict construction of quantities (only constructible
279          by multiplication of scalar by unit or quantity by unit) by preprocessor
280          <code class="computeroutput"><span class="identifier">MCS_STRICT_QUANTITY_CONSTRUCTION</span></code>
281          switch
282        </li>
283</ul></div>
284<p>
285      0.5.2 (December 4, 2006) :
286    </p>
287<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
288          added <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">cmath</span><span class="special">&gt;</span></code> wrappers in the <code class="computeroutput"><span class="identifier">std</span></code>
289          namespace for functions that can support quantities
290        </li></ul></div>
291<p>
292      0.5.1 (November 3, 2006) :
293    </p>
294<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
295<li class="listitem">
296          converted to Boost Software License
297        </li>
298<li class="listitem">
299          boostified directory structure and file paths
300        </li>
301</ul></div>
302<p>
303      0.5 (November 2, 2006) :
304    </p>
305<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
306<li class="listitem">
307          completely reimplemented SI and CGS unit systems and changed syntax for
308          quantities
309        </li>
310<li class="listitem">
311          significantly streamlined <code class="computeroutput"><span class="identifier">pow</span></code>
312          and <code class="computeroutput"><span class="identifier">root</span></code> so for most applications
313          it is only necessary to define <code class="computeroutput"><span class="identifier">power_typeof_helper</span></code>
314          and <code class="computeroutput"><span class="identifier">root_typeof_helper</span></code>
315          to gain this functionality
316        </li>
317<li class="listitem">
318          added a selection of physical constants from the CODATA tables
319        </li>
320<li class="listitem">
321          added a skeleton <code class="computeroutput"><span class="identifier">complex</span></code>
322          class that correctly supports both <code class="computeroutput"><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">quantity</span><span class="special">&lt;</span><span class="identifier">Y</span><span class="special">,</span><span class="identifier">Unit</span><span class="special">&gt;</span> <span class="special">&gt;</span></code>
323          and <code class="computeroutput"><span class="identifier">quantity</span><span class="special">&lt;</span><span class="identifier">complex</span><span class="special">&lt;</span><span class="identifier">Y</span><span class="special">&gt;,</span><span class="identifier">Unit</span><span class="special">&gt;</span></code>
324          as an example
325        </li>
326<li class="listitem">
327          investigate using Boost.Typeof for compilers that do not support <code class="computeroutput"><span class="identifier">typeof</span></code>
328        </li>
329</ul></div>
330<p>
331      0.4 (October 13, 2006) :
332    </p>
333<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
334<li class="listitem">
335          <code class="computeroutput"><span class="identifier">pow</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;</span></code>
336          and <code class="computeroutput"><span class="identifier">root</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;</span></code>
337          improved for user-defined types
338        </li>
339<li class="listitem">
340          added unary + and unary - operators
341        </li>
342<li class="listitem">
343          added new example of interfacing with <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">quaternion</span></code>
344        </li>
345<li class="listitem">
346          added optional preprocessor switch to enable implicit unit conversions
347          (<code class="computeroutput"><span class="identifier">BOOST_UNITS_ENABLE_IMPLICIT_UNIT_CONVERSIONS</span></code>)
348        </li>
349</ul></div>
350<p>
351      0.3 (September 6, 2006) :
352    </p>
353<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
354          Support for <code class="computeroutput"><span class="identifier">op</span><span class="special">(</span><span class="identifier">X</span> <span class="identifier">x</span><span class="special">,</span><span class="identifier">Y</span> <span class="identifier">y</span><span class="special">)</span></code> for g++ added. This is automatically active
355          when compiling with gcc and can be optionally enabled by defining the preprocessor
356          constant <code class="computeroutput"><span class="identifier">BOOST_UNITS_HAS_TYPEOF</span></code>
357        </li></ul></div>
358<p>
359      0.2 (September 4, 2006) : Second alpha release based on slightly modified code
360      from 0.1 release
361    </p>
362<p>
363      0.1 (December 13, 2003) : written as a Boost demonstration of MPL-based dimensional
364      analysis in 2003.
365    </p>
366</div>
367<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
368<td align="left"></td>
369<td align="right"><div class="copyright-footer">Copyright © 2003-2008 Matthias Christian Schabel<br>Copyright © 2007-2010 Steven
370      Watanabe<p>
371        Distributed under the Boost Software License, Version 1.0. (See accompanying
372        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
373      </p>
374</div></td>
375</tr></table>
376<hr>
377<div class="spirit-nav">
378<a accesskey="p" href="version_id.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../boost_units.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="TODO.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
379</div>
380</body>
381</html>
382