Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_34_1/libs/serialization/doc/release.html @ 29

Last change on this file since 29 was 29, checked in by landauf, 16 years ago

updated boost from 1_33_1 to 1_34_1

File size: 6.7 KB
Line 
1<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html>
3<!--
4(C) Copyright 2002-4 Robert Ramey - http://www.rrsd.com .
5Use, modification and distribution is subject to the Boost Software
6License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
7http://www.boost.org/LICENSE_1_0.txt)
8-->
9<head>
10<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
11<link rel="stylesheet" type="text/css" href="../../../boost.css">
12<link rel="stylesheet" type="text/css" href="style.css">
13<title>Serialization - Release Notes</title>
14</head>
15<body link="#0000ff" vlink="#800080">
16<table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
17  <tr> 
18    <td valign="top" width="300"> 
19      <h3><a href="../../../index.htm"><img height="86" width="277" alt="C++ Boost" src="../../../boost.png" border="0"></a></h3>
20    </td>
21    <td valign="top"> 
22      <h1 align="center">Serialization</h1>
23      <h2 align="center">Release Notes</h2>
24    </td>
25  </tr>
26</table>
27<hr>
28<dl class="index">
29  <dt><a href="#requirements">Requirements</a></dt>
30  <dt><a href="#recent_improvements">Differences from version 1.32</a></dt>
31  <dt><a href="#todo">Pending Issues</a></dt>
32</dl>
33This is the Boost 1.33 Serialization Library.
34There are currently no known bugs. However, due to compiler/library quirks and or
35bugs, some tests fail with some combinations of compilers and libraries.
36<h2><a name="requirements"></a>Requirements</h2>
37This library requires Boost version 1.33 or later.
38<p>
39The serialization library uses the boost spirit package to load XML archives.
40We have found that all tests pass using spirit 1.6x. Spirit 1.8 and higher does not work with
41older compilers - specificallly MSVC 6, Borland and GCC < 3.0.
42If you are using one of these compilers, you may download a version
43of spirit 1.6 <a href="http://spirit.sourceforge.net/index.php?doc=download/index.html">here</a>.
44Choose the latest 1.6.x Spirit only version available.
45To use this downloaded version rather than the one included with boost,
46you have two options: either replace the <code style="white-space: normal">boost/spirit</code> and
47<code style="white-space: normal">libs/spirit</code> directories, as well as the
48<code style="white-space: normal">boost/spirit.hpp</code> header, with those in the downloaded version,
49or extract Spirit 1.6 to a different directory and add the corresponding include directive to your
50<code style="white-space: normal">tools/build/v2/user-config.jam</code> file for all the
51compilers that need it, as in the following example:
52<pre><code>
53using borland : 5.6.4 : "C:/Program Files/Borland/CBuilder6/Bin/bcc32" :
54        &lt;cxxflags&gt;-IC:/spirit1.6 ;
55</code></pre>
56If you're not using bjam and the Jamfile to build the library, be sure that
57the directory which contains the version of spirit you plan to use is placed
58at the front of the list of include paths.
59
60<h2><a name="recent_improvements"></a>Differences from Boost 1.32</h2>
61<ul>
62    <li>Dynamic Linking Library (DLLs and shared libraries) for platforms which support them. See
63    <a href="../../../more/getting_started.html#auto-link">Automatic Linking on Windows</a>.
64    <li>Implementation of auto-link for compilers which can support this.
65    <li>Better support for <em>Argument Dependent Lookup</em> and two-phase lookup.
66    This results in simpler rules regarding the placing of serialization specializations
67    namespaces.
68    <li>Enhanced documentation to help explain usage of the above.
69    <li>Adjustments to improve support for less conformant compilers.
70    <li>Improved <code>const</code> correctness for save/load operators.  Note that this may
71    produce compile time errors in code which compiled without problem in earlier boost releases.
72    In most cases the fix is trivial.  In other cases, code should be scrutinized to be
73    sure that it doesn't use the serializaton system in a way which may introduce subtle bugs in
74    to the program.  A fuller explanation of this issue can be found
75    <a target="detail" href="traits.html#tracking">here</a>.
76    <li>A new implementation of serialization for <code style="white-space: normal">shared_ptr&lt;T&gt;</code>.  This
77    is compatible with public interface of <code style="white-space: normal">shared_ptr&lt;T&gt;</code>
78    so it should be more robust and not have to change in the future.  The implementation optionally
79    includes code to load <code style="white-space: normal">shared_ptr&lt;T&gt;</code> stored in
80    archives created with boost 1.32.  This code is stored in the header:
81    <code style="white-space: normal">boost/serialization/shared_ptr_132.hpp</code>. If your application
82    needs to load archives created with boost 1.32 libraries, include the above header
83    before each inclusion of <code style="white-space: normal">boost/serialization/shared_ptr.hpp</code>.
84    <li>More compilers tested and supported.
85    <li>Miscelleanous bug fixes.
86</ul>
87<h2><a name="recent_improvements"></a>Differences from Boost 1.33</h2>
88<ul>
89    <li>Native Binary archives use the <code style="white-space: normal">std::streambuf</code> interface.
90    This should result in noticible faster execution in some cases.
91</ul>
92
93<h2><a name="todo"></a>Pending issues</h2>
94<ul>
95    <li>Compile, and test on more platforms
96    <li>implement <code>is_virtual_base&lt;T&gt;</code> to automatically
97    eliminate redundancy in virtual base class serialization.
98    <li>currently can't serialize through a pointer an object a of class
99    that implements its own <code style="white-space: normal">new/delete</code> operators.
100    <li>Its possible that <code style="white-space: normal">std::string</code>
101    and <code style="white-space: normal">std::wstring</code> contain characters such as
102    '\0' which cannot be rendered in XML without an escape mechanism.  Currently there is
103    no such escape mechanism implemented.
104    <li>A subtle error in the implementation of serialiaton of <code style="white-space: normal">std::map</code>
105    is fixed in this version.  Unfortunately, the fix breaks serialization of
106    <code style="white-space: normal">std::map</code> for those compilers which do not support
107    partial template specialization.
108    <li>Floating point values which are number cannot be serialized to text base archives.
109</ul>
110<p>
111Aside from the above, there are a number of issus related to specific platforms. 
112These are listed in <a href="implementation.html#othercompilerissues">Specific Compiler/Library Issues</a>.
113
114
115<hr>
116<p><i>&copy; Copyright <a href="http://www.rrsd.com">Robert Ramey</a> 2002-2004.
117Distributed under the Boost Software License, Version 1.0. (See
118accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
119</i></p>
120</body>
121</html>
Note: See TracBrowser for help on using the repository browser.