| [29] | 1 | .. Copyright David Abrahams 2006. Distributed under the Boost | 
|---|
 | 2 | .. Software License, Version 1.0. (See accompanying | 
|---|
 | 3 | .. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | 
|---|
 | 4 |  | 
|---|
 | 5 | These are old release notes for Boost.Python v1 | 
|---|
 | 6 |  | 
|---|
 | 7 | 2000-11-22 10:00 | 
|---|
 | 8 |     Ullrich fixed bug in operator_dispatcher<op_long>. | 
|---|
 | 9 |      | 
|---|
 | 10 | 2000-11-21 10:00 | 
|---|
 | 11 |     Changed all class and function names into lower_case. | 
|---|
 | 12 |      | 
|---|
 | 13 |     Ullrich updated documentation for operator wrapping. | 
|---|
 | 14 |      | 
|---|
 | 15 | 2000-11-20 10:00 | 
|---|
 | 16 |     Ullrich renamed ExtensionClass:register_coerce() into  | 
|---|
 | 17 |     ExtensionClass:def_standard_coerce() and made it public | 
|---|
 | 18 |      | 
|---|
 | 19 |     Ullrich improved shared_pod_manager. | 
|---|
 | 20 |      | 
|---|
 | 21 | 2000-11-17 15:04 | 
|---|
 | 22 |     Changed allocation strategy of shared_pod_manager to make it portable. | 
|---|
 | 23 |      | 
|---|
 | 24 |     Added pickling support + tests thanks to "Ralf W. Grosse-Kunstleve" | 
|---|
 | 25 |     <rwgk@cci.lbl.gov> | 
|---|
 | 26 |  | 
|---|
 | 27 |     Added a specialization of Callback<const char*> to prevent unsafe usage. | 
|---|
 | 28 |  | 
|---|
 | 29 |     Fixed Ullrich's operator_dispatcher refcount bug | 
|---|
 | 30 |  | 
|---|
 | 31 |     Removed const char* return values from virtual functions in tests; that | 
|---|
 | 32 |     usage was unsafe. | 
|---|
 | 33 |  | 
|---|
 | 34 |     Ullrich changed Module::add() so that it steals a reference (fix of refcount bug) | 
|---|
 | 35 |      | 
|---|
 | 36 |     Ullrich added operator_dispatcher::create() optimization | 
|---|
 | 37 |      | 
|---|
 | 38 |     Ullrich changed design and implementation of TypeObjectBase::enable() (to eliminate low-level | 
|---|
 | 39 |     code) and added shared_pod_manager optimization. | 
|---|
 | 40 |  | 
|---|
 | 41 |  | 
|---|
 | 42 | 2000-11-15 12:01 | 
|---|
 | 43 |     Fixed refcount bugs in operator calls. | 
|---|
 | 44 |      | 
|---|
 | 45 |     Added callback_adjust_refcount(PyObject*, Type<T>) to account for different ownership  | 
|---|
 | 46 |     semantics of Callback's return types and Caller's arguments (which both use from_python()) | 
|---|
 | 47 |     This bug caused refcount errors during operator calls. | 
|---|
 | 48 |  | 
|---|
 | 49 |     Moved operator_dispatcher into extclass.cpp | 
|---|
 | 50 |     Gave it shared ownership of the objects it wraps | 
|---|
 | 51 |  | 
|---|
 | 52 |     Introduced sequence points in extension_class_coerce for exception-safety | 
|---|
 | 53 |  | 
|---|
 | 54 |     UPPER_CASE_MACRO_NAMES | 
|---|
 | 55 |  | 
|---|
 | 56 |     MixedCase template type argument names | 
|---|
 | 57 |  | 
|---|
 | 58 |     Changed internal error reporting to use Python exceptions so we don't force the | 
|---|
 | 59 |     user to link in iostreams code | 
|---|
 | 60 |  | 
|---|
 | 61 |     Changed error return value of call_cmp to -1 | 
|---|
 | 62 |  | 
|---|
 | 63 |     Moved unwrap_* functions out of operator_dispatcher. This was transitional: when | 
|---|
 | 64 |     I realized they didn't need to be declared in extclass.h I moved them out, but | 
|---|
 | 65 |     now that operator_dispatcher itself is in extclass.cpp they could go back in. | 
|---|
 | 66 |  | 
|---|
 | 67 |     Numerous formatting tweaks | 
|---|
 | 68 |  | 
|---|
 | 69 |     Updated the BoundFunction::create() optimization and enabled it so it could actually be used! | 
|---|
 | 70 |  | 
|---|
 | 71 | 2000-11-15 00:26 | 
|---|
 | 72 |  | 
|---|
 | 73 |     Made Ullrich's operators support work with MSVC | 
|---|
 | 74 |      | 
|---|
 | 75 |     Cleaned up operators.h such that invalid define_operator<0> is no longer needed. | 
|---|
 | 76 |      | 
|---|
 | 77 |     Ullrich created operators.h to support wrapping of C++ operators (including the "__r*__" forms).  | 
|---|
 | 78 |     He added several auxiliary classes to extclass.h and extclass.cpp (most importantly,  | 
|---|
 | 79 |     py::detail::operator_dispatcher and py::operators) | 
|---|
 | 80 |  | 
|---|
 | 81 | 2000-11-13 22:29 | 
|---|
 | 82 |  | 
|---|
 | 83 |     removed obsolete ExtensionClassFromPython for good. | 
|---|
 | 84 |  | 
|---|
 | 85 |     removed unused class ExtensionType forward declaration | 
|---|
 | 86 |  | 
|---|
 | 87 | 2000-11-12 13:08 | 
|---|
 | 88 |  | 
|---|
 | 89 |     Added enum_as_int_converters for easier enum wrapping | 
|---|
 | 90 |  | 
|---|
 | 91 |     Introduced new conversion namespace macros: | 
|---|
 | 92 |         PY_BEGIN_CONVERSION_NAMESPACE, | 
|---|
 | 93 |         PY_END_CONVERSION_NAMESPACE, | 
|---|
 | 94 |         PY_CONVERSION | 
|---|
 | 95 |  | 
|---|
 | 96 |     callback.h, gen_callback.py: | 
|---|
 | 97 |         Added call() function so that a regular python function (as opposed to | 
|---|
 | 98 |          method or other function-as-attribute) can be called. | 
|---|
 | 99 |  | 
|---|
 | 100 |          Added newlines for readability. | 
|---|
 | 101 |  | 
|---|
 | 102 |     class_wrapper.h: | 
|---|
 | 103 |         Fixed a bug in add(), which allows non-method class attributes | 
|---|
 | 104 |  | 
|---|
 | 105 |     Ullrich has added def_raw for simple varargs and keyword support. | 
|---|
 | 106 |  | 
|---|
 | 107 |     Fixed version number check for __MWERKS__ | 
|---|
 | 108 |      | 
|---|
 | 109 |     Added tests for enums and non-method class attributes | 
|---|
 | 110 |  | 
|---|
 | 111 |     objects.h/objects.cpp: | 
|---|
 | 112 |         Added py::String operator*= and operator* for repetition | 
|---|
 | 113 |  | 
|---|
 | 114 |         Change Dict::items(), keys(), and values() to return a List | 
|---|
 | 115 |  | 
|---|
 | 116 |         Added template versions of set_item, etc., methods so that users can optionally | 
|---|
 | 117 |         use C++ types that have to_python() functions as parameters. | 
|---|
 | 118 |  | 
|---|
 | 119 |         Changed various Ptr by-value parameters to const Ptr& | 
|---|
 | 120 |  | 
|---|
 | 121 |  | 
|---|
 | 122 | ======= Release ======= | 
|---|
 | 123 | 2000-11-06 0:22  | 
|---|
 | 124 |     Lots of documentation updates | 
|---|
 | 125 |  | 
|---|
 | 126 |     added 4-argument template constructor to py::Tuple | 
|---|
 | 127 |  | 
|---|
 | 128 |     added "add" member function to ClassWrapper<> to allow arbitrary Python | 
|---|
 | 129 |     objects to be added to an extension class. | 
|---|
 | 130 |  | 
|---|
 | 131 |     gen_all.py now generates support for n argument member functions and n+1 | 
|---|
 | 132 |     argument member functions at the suggestion of "Ralf W. Grosse-Kunstleve" | 
|---|
 | 133 |     <rwgk@cci.lbl.gov> | 
|---|
 | 134 |  | 
|---|
 | 135 |     Added regression tests and re-ordered declare_base calls to verify that the | 
|---|
 | 136 |     phantom base class issue is resolved. | 
|---|
 | 137 |  | 
|---|
 | 138 | 2000-11-04 17:35 | 
|---|
 | 139 |  | 
|---|
 | 140 |     Integrated Ullrich Koethe's brilliant from_python_experiment for better | 
|---|
 | 141 |     error-reporting in many cases. | 
|---|
 | 142 |  | 
|---|
 | 143 |     extclass.h, gen_extclass.py: | 
|---|
 | 144 |         removed special-case MSVC code | 
|---|
 | 145 |         added much commentary | 
|---|
 | 146 |         removed unused py_copy_to_new_value_holder | 
|---|
 | 147 |  | 
|---|
 | 148 |     init_function.h, gen_init_function.py: | 
|---|
 | 149 |         added missing 'template' keyword on type-dependent template member usage | 
|---|
 | 150 |         removed special-case MSVC code | 
|---|
 | 151 |         added much commentary | 
|---|
 | 152 |          | 
|---|
 | 153 | 2000-11-04 0:36 | 
|---|
 | 154 |  | 
|---|
 | 155 |     Removed the need for the phantom base class that screwed up inheritance | 
|---|
 | 156 |     hierarchies, introduced error-prone ordering dependencies, and complexified | 
|---|
 | 157 |     logic in many places! | 
|---|
 | 158 |      | 
|---|
 | 159 |     extclass.h: Added some explanatory comments, removed wasteful m_self member | 
|---|
 | 160 |     of HeldInstance | 
|---|
 | 161 |  | 
|---|
 | 162 |     extclass_demo.cpp: Added #pragmas which allow compilation in ansi strict | 
|---|
 | 163 |     mode under Metrowerks | 
|---|
 | 164 |  | 
|---|
 | 165 |     functions.h: Added virtual_function as part of phantom base class removal; | 
|---|
 | 166 |     expanded commentary | 
|---|
 | 167 |  | 
|---|
 | 168 |     pyptr.h: Added some missing 'typename's and a GCC workaround fix | 
|---|
 | 169 |  | 
|---|
 | 170 |     subclass.cpp: Added missing string literal const_cast<>s. | 
|---|
 | 171 |  | 
|---|
 | 172 | 2000-11-03 10:58 | 
|---|
 | 173 |  | 
|---|
 | 174 |     Fix friend function instantiation bug caught by Metrowerks (thanks | 
|---|
 | 175 |     Metrowerks!) | 
|---|
 | 176 |  | 
|---|
 | 177 |     Add proof-of-concept for one technique of wrapping function that return a | 
|---|
 | 178 |     pointer | 
|---|
 | 179 |  | 
|---|
 | 180 |     Worked around MSVC optimizer bug by writing to_python(double) and | 
|---|
 | 181 |     to_python(float) out-of-line | 
|---|
 | 182 |  | 
|---|
 | 183 | 2000-11-02 23:25 | 
|---|
 | 184 |  | 
|---|
 | 185 |     Add /Zm200 option to vc6_prj to deal with MSVC resource limitations | 
|---|
 | 186 |      | 
|---|
 | 187 |     Remove conflicting /Ot option from vc6_prj release build | 
|---|
 | 188 |  | 
|---|
 | 189 | ======= Release ======= | 
|---|
 | 190 | 2000-11-02 17:42 | 
|---|
 | 191 |  | 
|---|
 | 192 |     Added a fix for interactions between default virtual function | 
|---|
 | 193 |     implementations and declare_base(). You still need to write your | 
|---|
 | 194 |     declare_base() /after/ all member functions have been def()d for the two | 
|---|
 | 195 |     classes concerned.  Many, many thanks to Ullrich Koethe | 
|---|
 | 196 |     <koethe@informatik.uni-hamburg.de> for all his work on this. | 
|---|
 | 197 |  | 
|---|
 | 198 |     Added missing conversions: | 
|---|
 | 199 |         to_python(float) | 
|---|
 | 200 |         from_python(const char* const&) | 
|---|
 | 201 |         from_python(const double&) | 
|---|
 | 202 |         from_python(const float&) | 
|---|
 | 203 |  | 
|---|
 | 204 |     Added a Regression test for a reference-counting bug thanks to Mark Evans | 
|---|
 | 205 |     (<mark.evans@clarisay.com>) | 
|---|
 | 206 |  | 
|---|
 | 207 |     const-ify ClassBase::getattr() | 
|---|
 | 208 |  | 
|---|
 | 209 |     Add repr() function to Class<T> | 
|---|
 | 210 |  | 
|---|
 | 211 |     Add to_python/from_python conversions for PyPtr<T> | 
|---|
 | 212 |  | 
|---|
 | 213 |     Standardize set_item/get_item interfaces (instead of proxies) for Dict and List | 
|---|
 | 214 |  | 
|---|
 | 215 |     Add Reprable<> template to newtypes.h | 
|---|
 | 216 |  | 
|---|
 | 217 |     Fix a bug wherein the __module__ attribute would be lost for classes that have a | 
|---|
 | 218 |     default virtual function implementation. | 
|---|
 | 219 |  | 
|---|
 | 220 |     Remove extra ';' in module.cpp thanks to "Ralf W. Grosse-Kunstleve" | 
|---|
 | 221 |     <rwgk@cci.lbl.gov> | 
|---|
 | 222 |  | 
|---|
 | 223 |     Fix a bug in the code of example1.html | 
|---|