diff options
| author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-06-25 22:59:01 +0000 |
|---|---|---|
| committer | <> | 2013-09-27 11:49:28 +0000 |
| commit | 8c4528713d907ee2cfd3bfcbbad272c749867f84 (patch) | |
| tree | c09e2ce80f47b90c85cc720f5139089ad9c8cfff /libs/python/doc/news.html | |
| download | boost-tarball-baserock/morph.tar.gz | |
Imported from /home/lorry/working-area/delta_boost-tarball/boost_1_54_0.tar.bz2.boost_1_54_0baserock/morph
Diffstat (limited to 'libs/python/doc/news.html')
| -rw-r--r-- | libs/python/doc/news.html | 371 |
1 files changed, 371 insertions, 0 deletions
diff --git a/libs/python/doc/news.html b/libs/python/doc/news.html new file mode 100644 index 000000000..da57caeb3 --- /dev/null +++ b/libs/python/doc/news.html @@ -0,0 +1,371 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> + +<!-- Copyright David Abrahams 2006. 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) --> +<html> +<head> + <meta name="generator" content= + "HTML Tidy for Cygwin (vers 1st September 2004), see www.w3.org"> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <link rel="stylesheet" type="text/css" href="boost.css"> + + <title>Boost.Python - News/Change Log</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"><a href="index.html">Boost.Python</a></h1> + + <h2 align="center">News/Change Log</h2> + </td> + </tr> + </table> + <hr> + + <dl class="page-index"> + + <dt>Current SVN</dt> + <dd> + <ul> + <li>Python 3 support:</li> + <ul> + <li>All the current Boost.Python test cases passed. Extension modules using + Boost.Python expected to support Python 3 smoothly.</li> + <li>Introduced <code>object.contains</code> where <code>x.contains(y)</code> + is equivalent to Python code <code>y in x</code>. + Now <code>dict.has_key</code> is just a wrapper of <code>object.contains</code>. + </li> + <li>When building against Python 3, <code>str.decode</code> will be removed.</li> + <li>When building against Python 3, the original signature of <code>list.sort</code>, which is: + <pre>void sort(object_cref cmpfunc);</pre> + will change to: + <pre>void sort(args_proxy const &args, kwds_proxy const &kwds);</pre> + + This is because in Python 3 <code>list.sort</code> requires all its arguments be keyword arguments. + So you should call it like this: + <pre>x.sort(*tuple(), **dict(make_tuple(make_tuple("reverse", true))));</pre> + + </li> + <li>According to <a href="http://www.python.org/dev/peps/pep-3123/">PEP 3123</a>, + when building Boost.Python against Python older than 2.6, the following macros will + be defined in Boost.Python header: + <pre> +# define Py_TYPE(o) (((PyObject*)(o))->ob_type) +# define Py_REFCNT(o) (((PyObject*)(o))->ob_refcnt) +# define Py_SIZE(o) (((PyVarObject*)(o))->ob_size)</pre> + So extension writers can use these macro directly, to make code clean and compatible with Python 3. + </li> + </ul> + </ul> + </dd> + + <dt>1.39.0 Release</dt> + + <dd> + <ul> + <li>Pythonic signatures are now automatically appended to the + docstrings. + + <li>Use <a href="v2/docstring_options.html" + ><code>docstring_options.hpp</code></a> header + control the content of docstrings. + + <li>This new feature increases the size of the modules by about 14%. + If this is not acceptable it can be turned off by defining the macro + BOOST_PYTHON_NO_PY_SIGNATURES. Modules compiled with and without the macro + defined are compatible. + </li> + <li> If BOOST_PYTHON_NO_PY_SIGNATURES is undefined, this version defines the + macro BOOST_PYTHON_SUPPORTS_PY_SIGNATURES. This allows writing code that will compile + with older version of Boost.Python (see <a href="v2/pytype_function.html#examples">here</a>). + </li> + <li>By defining BOOST_PYTHON_PY_SIGNATURES_PROPER_INIT_SELF_TYPE, and at a cost + of another 14% size increase, proper pythonic type is generated for the "self" + parameter of the __init__ methods. + </li> + + <li> To support this new feature changes were made to the + <a href="v2/to_python_converter.html"><code>to_python_converter.hpp</code></a>, + <a href="v2/default_call_policies.html"><code>default_call_policies</code></a>, + <a href="v2/ResultConverter.html"><code>ResultConverter</code></a>, + <a href="v2/CallPolicies.html"><code>CallPolicies</code></a> and some others. + Efforts were made not to have interface breaking changes. + </li> + + </ul> + </dd> + + <dt>12 May 2007 - 1.34.0 release</dt> + + <dd> + <ul> + <li>C++ signatures are now automatically appended to the + docstrings. + + <li>New <a href="v2/docstring_options.html" + ><code>docstring_options.hpp</code></a> header to + control the content of docstrings. + + <li>Support for converting <code>void*</code> to/from python, + with <code><a + href="v2/opaque.html">opaque_pointer_converter</a></code> + as the return value policy. Thanks to Niall Douglas for the + initial patch. + </ul> + </dd> + + <dt>19 October 2005 - 1.33.1 release</dt> + + <dd> + <ul> + <li><code>wrapper<T></code> can now be used as expected with a + held type of <i>some-smart-pointer</i><code><T></code></li> + + <li>The build now assumes Python 2.4 by default, rather than 2.2</li> + + <li>Support Python that's built without Unicode support</li> + + <li>Support for wrapping classes with overloaded address-of + (<code>&</code>) operators</li> + </ul> + </dd> + + <dt>14 August 2005 - 1.33 release</dt> + + <dd> + <ul> + <li>Support for docstrings on nonstatic properties.</li> + + <li>We now export the client-provided docstrings for + <code>init<optional<> ></code> and + <i>XXX</i><code>_FUNCTION_OVERLOADS()</code> for only the last + overload.</li> + + <li>Fixed some support for Embedded VC++ 4</li> + + <li>Better support for rvalue from-python conversions of shared_ptr: + always return a pointer that holds the owning python object *unless* + the python object contains a NULL shared_ptr holder of the right + type.</li> + + <li>Support for exposing <code>vector<T*></code> with the + indexing suite.</li> + + <li>Support for GCC-3.3 on MacOS.</li> + + <li>updated visual studio project build file to include two new files + (slice.cpp and wrapper.cpp)</li> + + <li>Added search feature to the index page.</li> + + <li>Numerous fixes to the tutorial</li> + + <li>Numerous workarounds for MSVC 6 and 7, GCC 2.96, and EDG + 2.45</li> + </ul> + </dd> + + <dt>11 March 2005</dt> + + <dd> + <ul> + <li>Added a hack that will fool PyDoc into working with Boost.Python, + thanks to Nick Rasmussen</li> + </ul> + </dd> + + <dt>19 November 2004 - 1.32 release</dt> + + <dd> + <ul> + <li>Updated to use the Boost Software License.</li> + + <li>A new, <a href= + "tutorial/doc/html/python/exposing.html#python.class_virtual_functions"> + better method of wrapping classes with virtual functions</a> has been + implemented.</li> + + <li>Support for upcoming GCC symbol export control features have been + folded in, thanks to Niall Douglas.</li> + + <li>Improved support for <code>std::auto_ptr</code>-like types.</li> + + <li>The Visual C++ bug that makes top-level <i>cv-qualification</i> + of function parameter types part of the function type has been worked + around.</li> + + <li>Components used by other libraries have been moved out of + <code>python/detail</code> and into <code>boost/detail</code> to + improve dependency relationships.</li> + + <li>Miscellaneous bug fixes and compiler workarounds.</li> + </ul> + </dd> + + <dt>8 Sept 2004</dt> + + <dd>Support for Python's Bool type, thanks to <a href= + "mailto:dholth-at-fastmail.fm">Daniel Holth</a>.</dd> + + <dt>11 Sept 2003</dt> + + <dd> + <ul> + <li>Changed the response to multiple to-python converters being + registered for the same type from a hard error into warning; + Boost.Python now reports the offending type in the message.</li> + + <li>Added builtin <code>std::wstring</code> conversions</li> + + <li>Added <code>std::out_of_range</code> => Python + <code>IndexError</code> exception conversion, thanks to <a href= + "mailto:RaoulGough-at-yahoo.co.uk">Raoul Gough</a></li> + </ul> + </dd> + + <dt>9 Sept 2003</dt> + + <dd>Added new <code><a href="v2/str.html#str-spec">str</a></code></dd> + + <dt>constructors which take a range of characters, allowing strings + containing nul (<code>'\0'</code>) characters.</dt> + + <dt>8 Sept 2003</dt> + + <dd>Added the ability to create methods from function objects (with an + <code>operator()</code>); see the <a href= + "v2/make_function.html#make_function-spec">make_function</a> docs for + more info.</dd> + + <dt>10 August 2003</dt> + + <dd>Added the new <code>properties</code> unit tests contributed by + <a href="mailto:romany-at-actimize.com">Roman Yakovenko</a> and + documented <code>add_static_property</code> at his urging.</dd> + + <dt>1 August 2003</dt> + + <dd> + Added the new <code>arg</code> class contributed by <a href= + "mailto:nickm-at-sitius.com">Nikolay Mladenov</a> which supplies the + ability to wrap functions that can be called with ommitted arguments in + the middle: + <pre> +void f(int x = 0, double y = 3.14, std::string z = std::string("foo")); + +BOOST_PYTHON_MODULE(test) +{ + def("f", f + , (arg("x", 0), arg("y", 3.14), arg("z", "foo"))); +} + +</pre>And in Python: + <pre> +>>> import test +>>> f(0, z = "bar") +>>> f(z = "bar", y = 0.0) +</pre>Thanks, Nikolay! + </dd> + + <dt>22 July 2003</dt> + + <dd>Killed the dreaded "bad argument type for builtin operation" error. + Argument errors now show the actual and expected argument types!</dd> + + <dt>19 July 2003</dt> + + <dd>Added the new <code><a href= + "v2/return_arg.html">return_arg</a></code> policy from <a href= + "mailto:nickm-at-sitius.com">Nikolay Mladenov</a>. Thanks, Nikolay!</dd> + + <dt>18 March, 2003</dt> + + <dd><a href="mailto:Gottfried.Ganssauge-at-haufe.de">Gottfried + Ganßauge</a> has contributed <a href= + "v2/opaque.html">opaque pointer support</a>.<br> + <a href="mailto:nicodemus-at-globalite.com.br">Bruno da Silva de + Oliveira</a> has contributed the exciting <a href= + "../pyste/index.html">Pyste</a> ("Pie-steh") package.</dd> + + <dt>24 February 2003</dt> + + <dd>Finished improved support for <code>boost::shared_ptr</code>. Now any + wrapped object of C++ class <code>X</code> can be converted automatically + to <code>shared_ptr<X></code>, regardless of how it was wrapped. + The <code>shared_ptr</code> will manage the lifetime of the Python object + which supplied the <code>X</code>, rather than just the <code>X</code> + object itself, and when such a <code>shared_ptr</code> is converted back + to Python, the original Python object will be returned.</dd> + + <dt>19 January 2003</dt> + + <dd>Integrated <code>staticmethod</code> support from <a href= + "mailto:nickm-at-sitius.com">Nikolay Mladenov</a>. Thanks, Nikolay!</dd> + + <dt>29 December 2002</dt> + + <dd>Added Visual Studio project file and instructions from Brett Calcott. + Thanks, Brett!</dd> + + <dt>20 December 2002</dt> + + <dd>Added automatic downcasting for pointers, references, and smart + pointers to polymorphic class types upon conversion to python</dd> + + <dt>18 December 2002</dt> + + <dd>Optimized from_python conversions for wrapped classes by putting the + conversion logic in the shared library instead of registering separate + converters for each class in each extension module</dd> + + <dt>19 November 2002</dt> + + <dd>Removed the need for users to cast base class member function + pointers when used as arguments to <a href= + "v2/class.html#class_-spec-modifiers">add_property</a></dd> + + <dt>13 December 2002</dt> + + <dd>Allow exporting of <a href= + "v2/enum.html#enum_-spec"><code>enum_</code></a> values into enclosing + <a href="v2/scope.html#scope-spec"><code>scope</code></a>.<br> + Fixed unsigned integer conversions to deal correctly with numbers that + are out-of-range of <code>signed long</code>.</dd> + + <dt>14 November 2002</dt> + + <dd>Auto-detection of class data members wrapped with <a href= + "v2/data_members.html#make_getter-spec"><code>make_getter</code></a></dd> + + <dt>13 November 2002</dt> + + <dd>Full Support for <code>std::auto_ptr<></code> added.</dd> + + <dt>October 2002</dt> + + <dd>Ongoing updates and improvements to tutorial documentation</dd> + + <dt>10 October 2002</dt> + + <dd>Boost.Python V2 is released!</dd> + </dl> + <hr> + + <p>Revised + <!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan --> + 19 November 2004 + <!--webbot bot="Timestamp" endspan i-checksum="39359" --></p> + + <p><i>© Copyright <a href="http://www.boost.org/people/dave_abrahams.htm">Dave + Abrahams</a> 2002-2003.</i></p> +</body> +</html> |
