blob: 470061462abeec4bb116690a3c44e2950f0a672f [file] [log] [blame]
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.
Issue # numbers mentioned below can be found on Github. For more details, add
the issue number to the end of the URL: https://github.com/swig/swig/issues/
Version 4.3.0 (in progress)
===========================
2024-04-12: pfusik
[Javascript] #2869 Fix JavaScript _wrap_getCPtr on 64-bit Windows
2024-04-12: wsfulton
[Javascript, MzScheme, Python, Ruby] #202 Remove the vast majority of the
/*@SWIG:...*/ locator strings in the generated wrappers for these 4 languages
to help with reproducible builds.
2024-04-08: thewtex
[Python] #2856 Include stdlib.h for more recent Python Stable ABI
2024-03-28: olly
Fix preprocessor to handle C-style comment ending **/ in macro argument.
2024-03-27: wsfulton
[Python] #2844 Fix for using more than one std::string_view type in a method.
2024-03-27: wsfulton
[R] #2847 Add missing std::vector<long> and std::vector<long long> typemaps
which were missing depending on whether or not SWIGWORDSIZE64 was defined.
2024-03-25: wsfulton
[Python] #2826 Stricter stable ABI conformance.
1. Use Py_DecRef and Py_IncRef when Py_LIMITED_API is defined instead of
macro equivalents, such as Py_INCREF.
2. Don't use PyUnicode_GetLength from python-3.7 and later.
3. Use PyObject_Free instead of deprecated equivalents.
2024-03-25: olly
#2848 Fix elision of comma before ##__VARARGS__ which we document
as supported but seems to have not worked since before 2009.
2024-03-11: wsfulton
[C#] #2829 Improve handling and documentation of missing enum base type
information.
2024-03-07: wsfulton
[Ocaml] Fix SWIGTYPE MOVE 'in' typemap to fix compilation error.
2024-03-07: wsfulton
Add SWIGTYPE MOVE 'typecheck' typemaps to remove warning 472
(SWIGWARN_TYPEMAP_TYPECHECK_UNDEF).
2024-03-06: wsfulton
Add support for std::unique_ptr & typemaps. Non-const inputs implement
move semantics from proxy class to C++ layer, otherwise const inputs
and all reference returns behave like any other lvalue reference to a class.
2024-03-06: wsfulton
[Javascript, MzScheme, Octave] Support NULL being passed into char* typemaps.
2024-03-06: christophe-calmejane,wsfulton
#2650 Add support for movable std::unique_ptr by adding in std::unique_ptr &&
input typemaps. The std::unique && output typemaps do not support move
semantics by default and behave like lvalue references.
2024-03-06: wsfulton
Add missing use of move constructor instead of copy constructor when
passing movable types by value. This was previously implemented only for
parameters passed to a global function or static member function and is
now extended to parameters passed to member methods as well as constructors.
2024-03-01: olly
[Java] #2819 Suppress Java removal warnings for uses of
System.runFinalization(). SWIG will need to stop relying on
finalize methods, but we know that and meanwhile these warnings
make the testsuite output noisy. Fix use of deprecated form
of Runtime.exec() in the doxygen example.
2024-02-28: wsfulton
#1754 Fix compilation errors in generated code when instantiating a templated
static method within a template (non-static methods and constructors were
always okay). For example:
template <typename T> class X {
template <class InputIterator>
static void fn(InputIterator first, InputIterator last) { ... }
};
class SimpleIterator { ... };
%extend X<int> {
%template(fn) fn<SimpleIterator>;
}