|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r58018 - trunk/libs/serialization/doc
From: ramey_at_[hidden]
Date: 2009-11-28 17:16:18
Author: ramey
Date: 2009-11-28 17:16:18 EST (Sat, 28 Nov 2009)
New Revision: 58018
URL: http://svn.boost.org/trac/boost/changeset/58018
Log:
documentation fixes
Text files modified:
trunk/libs/serialization/doc/release.html | 376 ++++++++++++++++++++-------------------
1 files changed, 193 insertions(+), 183 deletions(-)
Modified: trunk/libs/serialization/doc/release.html
==============================================================================
--- trunk/libs/serialization/doc/release.html (original)
+++ trunk/libs/serialization/doc/release.html 2009-11-28 17:16:18 EST (Sat, 28 Nov 2009)
@@ -1,74 +1,78 @@
<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
-<!--
+ <!--
(C) Copyright 2002-4 Robert Ramey - http://www.rrsd.com .
Use, modification and distribution is subject to the Boost Software
License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
-->
<head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <link rel="stylesheet" type="text/css" href="../../../boost.css">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<link rel="stylesheet" type="text/css" href="../../../boost.css">
<link rel="stylesheet" type="text/css" href="style.css">
- <title>Serialization - Release Notes</title>
+ <title>Serialization - Release Notes</title>
</head>
<body link="#0000ff" vlink="#800080">
- <table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
- <tr>
- <td valign="top" width="300">
- <h3>
- <a href="../../../index.htm">
- <img height="86" width="277" alt="C++ Boost" src="../../../boost.png" border="0"></a></h3>
- </td>
- <td valign="top">
- <h1 align="center">
- Serialization</h1>
- <h2 align="center">
- Release Notes</h2>
- </td>
- </tr>
- </table>
- <hr>
- <dl class="index">
- <dt>Requirements</dt>
- <dt>Differences from version 1.37</dt>
- <dt>Differences from version 1.37</dt>
- <dt>Differences from version 1.35</dt>
- <dt>Differences from version 1.34</dt>
- <dt>Differences from version 1.33</dt>
- <dt>Differences from version 1.32</dt>
- <dt>Pending Issues</dt>
- </dl>
- As of this is written, there are no known bugs. However, due to compiler/library
- quirks and or bugs, some tests fail with some combinations of compilers and libraries.
- <h2>
- <a name="requirements"></a>Requirements</h2>
- This library has been tested against Boost version 1.39 and 1.40.
- <p>
- Changes have been made to archive classes included with the library.
- Users who have used these a guide to making their own archive classes
- will find that these will likely no longer compile. This can be remedied
- by making the following changes in the code which instantiates these
- archive classes.
- <p>
- Old Code:<br>
- <code><pre>
- ...
- #include <boost/archive/impl/archive_pointer_iserializer.ipp>
- ...
- template class detail::archive_pointer_iserializer<naked_text_iarchive> ;
- ...
- template class detail::archive_pointer_iserializer<text_iarchive> ;
- </pre></code>
- should be replaced with this new code:
- <p>
- <code><pre>
- #include <boost/archive/impl/archive_serializer_map.ipp>
- ...
- template class detail::archive_serializer_map<naked_text_iarchive> ;
- ...
- template class detail::archive_serializer_map<text_iarchive> ;
- </pre></code>
+<table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
+ <tr>
+ <td valign="top" width="300">
+ <h3>
+ </h3>
+ </td>
+ <td valign="top">
+ <h1 align="center">
+ Serialization</h1>
+ <h2 align="center">
+ Release Notes</h2>
+ </td>
+ </tr>
+</table>
+<hr>
+<dl class="index">
+ <dt>Differences from version 1.41</dt>
+ <dt>Differences from version 1.40</dt>
+ <dt>Differences from version 1.39</dt>
+ <dt>Differences from version 1.37</dt>
+ <dt>Differences from version 1.35</dt>
+ <dt>Differences from version 1.34</dt>
+ <dt>Differences from version 1.33</dt>
+ <dt>Differences from version 1.32</dt>
+ <dt>Pending Issues</dt>
+</dl>
+As of this writing, there are no known bugs. However, due to compiler/library
+quirks and or bugs, some tests fail with some combinations of compilers and
+libraries.
+<h2><a name="differences_1_41"></a>Differences from Boost 1.41</h2>
+<ul>
+ <li>adjustments have been made to minimize compile time warnings.
+ <li>compile time warnings have been implemented to detect practices which
+ though correct, will result in operation or side effects different than
+ a user probably intends.
+ <li>Some memory leaks associated with void_cast have been fixed.
+</ul>
+<h2><a name="differences_1_40"></a>Differences from Boost 1.40</h2>
+This library has been tested against Boost version 1.39 and 1.40.
+<p>
+ Changes have been made to archive classes included with the library. Users who
+ have used these a guide to making their own archive classes will find that
+ these will likely no longer compile. This can be remedied by making the
+ following changes in the code which instantiates these archive classes.
+</p>
+Old Code:<br>
+<code><pre>
+...
+#include <boost/archive/impl/archive_pointer_iserializer.ipp>
+...
+template class detail::archive_pointer_iserializer<naked_text_iarchive> ;
+...
+template class detail::archive_pointer_iserializer<text_iarchive> ;
+</pre></code>should be replaced with this new code: <code><pre>
+#include <boost/archive/impl/archive_serializer_map.ipp>
+...
+template class detail::archive_serializer_map<naked_text_iarchive> ;
+...
+template class detail::archive_serializer_map<text_iarchive> ;
+</pre></code>
<!--
<p>
The serialization library uses the boost spirit package to load XML archives.
@@ -86,128 +90,134 @@
the directory which contains the version of spirit you plan to use is placed
at the front of the list of include paths.
-->
- <h2>
- <a name="differences_1_39"></a>Differences from Boost 1.39</h2>
- <ul>
- <li>It is now possible to serialize an object through a pointer to a class which implements
- its own <code style="white-space: normal">new/delete</code> operators. This functionaly
- is not available on some compilers.
- <li>serialization of polymorphic objects has been sped up considerably.
- </ul>
- As of this writing, all bug reports filed
- as TRAK tickets have been addressed. There are some TRAK tickets pending which
- would best be described as feature requests. See Pending Issues.
- <h2>
- <a name="differences_1_37"></a>Differences from Boost 1.37</h2>
- There are no new features in this version. As of this writing, all bug reports filed
- as TRAK tickets have been addressed. There are some TRAK tickets pending which
- would best be described as feature requests. See Pending Issues.
- <h2>
- <a name="differences_1_36"></a>Differences from Boost 1.36</h2>
- There are no new features in this version. As of this writing, all bug reports filed
- as TRAK tickets have been addressed.
- <h2>
- <a name="differences_1_35"></a>Differences from Boost 1.35</h2>
- <ul>
- <li>
- The library is now thread safe. That is, multiple archives can be open in different
- threads. This has been implmented with a lock-free algorithm to avoid any performance
- bottlenecks.
- <li>
- Serialization of types defined in shared libraries is now supported. shared libraries
- (DLLS) can be loaded/unloaded dynamically at runtime. This includes the serialization
- of instances of abstract base classes so that a program can be written so as to
- be compatible with as yet undefined and un-implemented code.
- <li>
- The extended type info system has been enhanced to in order to implement the above.
- It is now a general purpose system for creating and casting of types about which
- is only known a string ID and an abstract base class.
- <li>
- All bug reports filed as TRAK tickets have been addressed.
- <li>
- As of this writing, the library will fail build on older compilers such as MSVC
- before version 7.1 and older versions of Borland compilers. This might or might
- not change in the future.
- </ul>
- <h2>
- <a name="differences_1_34"></a>Differences from Boost 1.34</h2>
- <ul>
- <li>
- Enhanced support for fast serialization for native binary archives. By Mattias Troyer.
- <li>
- Improved implementation of "export" functionality. Removes header ordering requirement
- and eliminates the maintenance of a pre-determined list of "known archives" By David
- Abrahams.
- <li>
- Improved support for STLPort.
- </ul>
- <h2>
- <a name="differences_1_33"></a>Differences from Boost 1.33</h2>
- <ul>
- <li>Native Binary archives use the <code style="white-space: normal">std::streambuf</code>
- interface. This should result in noticeably faster execution in many cases.
- </ul>
- <h2>
- <a name="differences_1_32"></a>Differences from Boost 1.32</h2>
- <ul>
- <li>Dynamic Linking Library (DLLs and shared libraries) for platforms which support
- them. See <a href="../../../more/getting_started/windows.html#auto-linking">Automatic
- Linking on Windows</a>.
- <li>
- Implementation of auto-link for compilers which can support this.
- <li>Better support for <em>Argument Dependent Lookup</em>
- and two-phase lookup. This results in simpler rules regarding the placing of serialization
- specializations namespaces.
- <li>
- Enhanced documentation to help explain usage of the above.
- <li>
- Adjustments to improve support for less conformant compilers.
- <li>Improved <code>const</code> correctness for save/load operators. Note that this
- may produce compile time errors in code which compiled without problem in earlier
- boost releases. In most cases the fix is trivial. In other cases, code should be
- scrutinized to be sure that it doesn't use the serialization system in a way which
- may introduce subtle bugs in to the program. A fuller explanation of this issue
- can be found <a target="detail" href="traits.html#tracking">here</a>.
- <li>A new implementation of serialization for <code style="white-space: normal">shared_ptr<T></code>.
- This is compatible with public interface of <code style="white-space: normal">shared_ptr<T></code>
- so it should be more robust and not have to change in the future. The implementation
- optionally includes code to load <code style="white-space: normal">shared_ptr<T></code>
- stored in archives created with boost 1.32. This code is stored in 'he header: <code
- style="white-space: normal">boost/serialization/shared_ptr_132.hpp</code>. If
- your application needs to load archives created with boost 1.32 libraries, include
- the above header before each inclusion of <code style="white-space: normal">boost/serialization/shared_ptr.hpp</code>.
- <li>
- More compilers tested and supported.
- <li>
- Miscellaneous bug fixes.
- </ul>
- <h2>
- <a name="todo"></a>Pending issues</h2>
- <ul>
- <li>Rvalues cannot be serialized. It would be possible to implement this for
- untracked types, but this has not been done.
- <li>
- Pointers to pointers cannot currently be serialized
- <li>Its possible that <code style="white-space: normal">std::string</code> and <code
- style="white-space: normal">std::wstring</code>
- contain characters such as '\0' and -1 (EOF) which cannot be rendered in text and
- XML archives without an escape mechanism. Currently there is no such escape mechanism
- implemented.
- <li>A subtle error in the implementation of serializaton of <code style="white-space: normal">
- std::map</code> is fixed in this version. Unfortunately, the fix breaks serialization
- of <code style="white-space: normal">std::map</code>
- for those compilers which do not support partial template specialization. Also,
- types which contain pointers or tracked types might not work correctly.
- </ul>
- <p>
- Aside from the above, there are a number of issues related to specific platforms.
- These are listed in <a href="implementation.html#othercompilerissues">Specific Compiler/Library
- Issues</a>.
- <hr>
- <p>
- <i>© Copyright Robert Ramey 2002-2009. Distributed
- under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt
- or copy at http://www.boost.org/LICENSE_1_0.txt) </i>
- </p>
+<h2><a name="differences_1_39"></a>Differences from Boost 1.39</h2>
+<ul>
+ <li>
+ It is now possible to serialize an object through a pointer to a class which
+ implements its own <code style="white-space: normal">new/delete</code>
+ operators. This functionaly is not available on some compilers.
+ <li>
+ serialization of polymorphic objects has been sped up considerably.
+</ul>
+As of this writing, all bug reports filed as TRAK tickets have been addressed.
+There are some TRAK tickets pending which would best be described as feature
+requests. See Pending Issues.
+<h2><a name="differences_1_37"></a>Differences from Boost 1.37</h2>
+There are no new features in this version. As of this writing, all bug reports
+filed as TRAK tickets have been addressed. There are some TRAK tickets pending
+which would best be described as feature requests. See <a href="#todo">Pending
+ Issues</a>.
+<h2><a name="differences_1_36"></a>Differences from Boost 1.36</h2>
+There are no new features in this version. As of this writing, all bug reports
+filed as TRAK tickets have been addressed.
+<h2><a name="differences_1_35"></a>Differences from Boost 1.35</h2>
+<ul>
+ <li>
+ The library is now thread safe. That is, multiple archives can be open in
+ different threads. This has been implmented with a lock-free algorithm to avoid
+ any performance bottlenecks.
+ <li>
+ Serialization of types defined in shared libraries is now supported. shared
+ libraries (DLLS) can be loaded/unloaded dynamically at runtime. This includes
+ the serialization of instances of abstract base classes so that a program can
+ be written so as to be compatible with as yet undefined and un-implemented
+ code.
+ <li>
+ The extended type info system has been enhanced to in order to implement the
+ above. It is now a general purpose system for creating and casting of types
+ about which is only known a string ID and an abstract base class.
+ <li>
+ All bug reports filed as TRAK tickets have been addressed.
+ <li>
+ As of this writing, the library will fail build on older compilers such as MSVC
+ before version 7.1 and older versions of Borland compilers. This might or might
+ not change in the future.
+</ul>
+<h2><a name="differences_1_34"></a>Differences from Boost 1.34</h2>
+<ul>
+ <li>
+ Enhanced support for fast serialization for native binary archives. By Mattias
+ Troyer.
+ <li>
+ Improved implementation of "export" functionality. Removes header ordering
+ requirement and eliminates the maintenance of a pre-determined list of "known
+ archives" By David Abrahams.
+ <li>
+ Improved support for STLPort.
+</ul>
+<h2><a name="differences_1_33"></a>Differences from Boost 1.33</h2>
+<ul>
+ <li>
+ Native Binary archives use the <code style="white-space: normal">std::streambuf</code>
+ interface. This should result in noticeably faster execution in many cases.
+</ul>
+<h2><a name="differences_1_32"></a>Differences from Boost 1.32</h2>
+<ul>
+ <li>
+ Dynamic Linking Library (DLLs and shared libraries) for platforms which support
+ them. See <a href="../../../more/getting_started/windows.html#auto-linking">Automatic
+ Linking on Windows</a>.
+ <li>
+ Implementation of auto-link for compilers which can support this.
+ <li>
+ Better support for <em>Argument Dependent Lookup</em>
+ and two-phase lookup. This results in simpler rules regarding the placing of
+ serialization specializations namespaces.
+ <li>
+ Enhanced documentation to help explain usage of the above.
+ <li>
+ Adjustments to improve support for less conformant compilers.
+ <li>
+ Improved <code>const</code> correctness for save/load operators. Note that this
+ may produce compile time errors in code which compiled without problem in
+ earlier boost releases. In most cases the fix is trivial. In other cases, code
+ should be scrutinized to be sure that it doesn't use the serialization system
+ in a way which may introduce subtle bugs in to the program. A fuller
+ explanation of this issue can be found <a target="detail" href="traits.html#tracking">
+ here</a>.
+ <li>
+ A new implementation of serialization for <code style="white-space: normal">shared_ptr<T></code>.
+ This is compatible with public interface of <code style="white-space: normal">shared_ptr<T></code>
+ so it should be more robust and not have to change in the future. The
+ implementation optionally includes code to load <code style="white-space: normal">shared_ptr<T></code>
+ stored in archives created with boost 1.32. This code is stored in 'he header: <code style="white-space: normal">
+ boost/serialization/shared_ptr_132.hpp</code>. If your application needs to
+ load archives created with boost 1.32 libraries, include the above header
+ before each inclusion of <code style="white-space: normal">boost/serialization/shared_ptr.hpp</code>.
+ <li>
+ More compilers tested and supported.
+ <li>
+ Miscellaneous bug fixes.
+</ul>
+<h2><a name="todo"></a>Pending issues</h2>
+<ul>
+ <li>
+ Rvalues cannot be serialized. It would be possible to implement this for
+ untracked types, but this has not been done.
+ <li>
+ Pointers to pointers cannot currently be serialized
+ <li>
+ Its possible that <code style="white-space: normal">std::string</code> and <code style="white-space: normal">
+ std::wstring</code>
+ contain characters such as '\0' and -1 (EOF) which cannot be rendered in text
+ and XML archives without an escape mechanism. Currently there is no such escape
+ mechanism implemented.
+ <li>
+ A subtle error in the implementation of serializaton of <code style="white-space: normal">
+ std::map</code> is fixed in this version. Unfortunately, the fix breaks
+ serialization of <code style="white-space: normal">std::map</code>
+ for those compilers which do not support partial template specialization. Also,
+ types which contain pointers or tracked types might not work correctly.
+</ul>
+<p>
+ Aside from the above, there are a number of issues related to specific
+ platforms. These are listed in <a href="implementation.html#othercompilerissues">Specific
+ Compiler/Library Issues</a>.
+ <hr>
+<p>
+ <i>© Copyright Robert Ramey 2002-2009.
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) </i>
+</p>
</body>
</html>
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk