| Below are the changes for the current release. |
| See the CHANGES file for changes in older releases. |
| See the RELEASENOTES file for a summary of changes in each release. |
| |
| Version 2.0.12 (9 Feb 2014) |
| =========================== |
| |
| 2014-01-16: wsfulton |
| [PHP] Fix compilation error in ZTS mode (64 bit windows) due to incorrect placement |
| of TSRMLS_FETCH() in SWIG_Php_GetModule() as reported by Mark Dawson-Butterworth. |
| |
| 2014-01-13: kwwette |
| [Octave] update support to Octave version 3.8.0 |
| |
| - Octave 3.8.0 no longer defines OCTAVE_API_VERSION_NUMBER, but 3.8.1 |
| will define OCTAVE_{MAJOR,MINOR,PATCH}_VERSION instead: see |
| http://hg.savannah.gnu.org/hgweb/octave/rev/b6b6e0dc700e |
| So we now use a new macro SWIG_OCTAVE_PREREQ(major,minor,patch) to |
| enable features requiring Octave version major.minor.patch or later. |
| |
| For Octave versions prior to 3.8.1, we reconstruct values for |
| OCTAVE_{MAJOR,MINOR,PATCH}_VERSION based on OCTAVE_API_VERSION_NUMBER, |
| extracted from Octave's ChangeLogs. An additional hack is needed to |
| distinguish between Octave <= 3.2.x and 3.8.0, neither of which define |
| OCTAVE_API_VERSION_NUMBER. |
| |
| - Octave 3.8.0 deprecates symbol_table::varref(), so remove its use |
| for this and future versions of Octave. |
| |
| - Octave 3.8.0 removes octave_value::is_real_nd_array(), used in |
| octave_swig_type::dims(). Its use is not required here, so remove it. |
| |
| - Retested against Octave versions 3.0.5, 3.2.4, 3.4.3, 3.6.4, and 3.8.0. |
| |
| - Updated Octave documentation with tested Octave versions, and added a |
| warning against using versions <= 3.x.x, which are no longer tested. |
| |
| 2013-12-22: wsfulton |
| C++11 support for new versions of erase and insert in the STL containers. |
| |
| The erase and insert methods in the containers use const_iterator instead |
| of iterator in C++11. There are times when the methods wrapped must match |
| the parameters exactly. Specifically when full type information for |
| template types is missing or SWIG fails to look up the type correctly, |
| for example: |
| |
| %include <std_vector.i> |
| typedef float Real; |
| %template(RealVector) std::vector<Real>; |
| |
| SWIG does not find std::vector<Real>::iterator because %template using |
| typedefs does not always work and so SWIG doesn't know if the type is |
| copyable and so uses SwigValueWrapper<iterator> which does |
| not support conversion to another type (const_iterator). This resulted |
| in compilation errors when using the C++11 version of the containers. |
| |
| Closes #73 |
| |
| 2013-10-17: wsfulton |
| [R] Fix SF #1340 - Visual Studio compile error in C++ wrappers due to #include <exception> |
| within extern "C" block. |
| |
| 2013-10-17: wsfulton |
| [Python] Fix SF #1345 - Missing #include <stddef.h> for offsetof when using -builtin. |
| |
| 2013-10-12: wsfulton |
| [Lua] Apply #92 - missing return statements for SWIG_Lua_add_namespace_details() |
| and SWIG_Lua_namespace_register(). |
| |