mirror of https://github.com/swig/swig
145 lines
6.2 KiB
Plaintext
145 lines
6.2 KiB
Plaintext
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 3.0.9 (in progress)
|
|
===========================
|
|
|
|
2016-04-02: derkuci
|
|
[Python] Patch #610 to fix #607.
|
|
Fix single arguments when using python -builtin -O with %feature("compactdefaultargs")
|
|
|
|
2016-03-31: wsfulton
|
|
Fixes #594. Fix assertion for some languages when wrapping a C++11 enum class that
|
|
is private in a class.
|
|
|
|
Also don't wrap private enums for a few languages that attempted to do so.
|
|
|
|
2016-03-31: wsfulton
|
|
[Java] unsigned long long marshalling improvements when a negative number
|
|
is passed from Java to C. A cast to signed long long in the C layer will now
|
|
result in the expected value. No change for positive numbers passed to C.
|
|
Fixes #623.
|
|
|
|
2016-03-22: alexwarg
|
|
[Lua] #398 Fix lua __getitem + inheritance
|
|
The new handling of classes in Lua (not merging methods into the derived classes)
|
|
breaks for classes that provide a __getitem function. The __getitem function
|
|
prevents method calls to any method defined in a base class. This fix calls
|
|
__getitem only if the member is not found using recursive lookup.
|
|
|
|
2016-03-18: ptomulik
|
|
[Python] #563 Stop generating unnecessary _swigconstant helpers.
|
|
|
|
2016-03-16: richardbeare
|
|
[R] #636 Add extra std::vector numeric types
|
|
|
|
2016-03-14: wsfulton
|
|
[Java] Add std_array.i for C++11 std::array support.
|
|
|
|
2016-03-12: wsfulton
|
|
[Java, C#, D] Fix static const char member variables wrappers with %javaconst(1)
|
|
%csconst(1) or %dmanifestconst.
|
|
This fixes the case when an integer is used as the initializer, such as:
|
|
|
|
struct W { static const char w = 100; };
|
|
|
|
Fix generated code parsing enum values using char escape sequences
|
|
when these values appear in the Java code (usually when using %javaconst(1))
|
|
such as:
|
|
|
|
enum X { x1 = '\n', x2 = '\1' };
|
|
|
|
Similarly for static const member char variables such as:
|
|
|
|
struct Y { static const char y = '\n'; }
|
|
|
|
Likewise for D and %dmanifestconstant. For C# and %csconst(1), char
|
|
values in C# are now hex escaped as C# doesn't support C octal escaping.
|
|
|
|
2016-03-11: wsfulton
|
|
[Java C#] Add support for treating C++ base classes as Java interfaces
|
|
instead of Java proxy classes. This enable some sort of support for
|
|
multiple inheritance. The implementation is in swiginterface.i and
|
|
provides additional macros (see Java.html for full documentation):
|
|
|
|
%interface(CTYPE)
|
|
%interface_impl(CTYPE)
|
|
%interface_custom("PROXY", "INTERFACE", CTYPE)
|
|
|
|
2016-03-01: wsfulton
|
|
Add rstrip encoder for use in %rename. This is like the strip encoder but
|
|
strips the symbol's suffix instead of the prefix. The example below
|
|
will rename SomeThingCls to SomeThing and AnotherThingCls to AnotherThing:
|
|
|
|
%rename("%(rstrip:[Cls])s") "";
|
|
|
|
class SomeThingCls {};
|
|
struct AnotherThingCls {};
|
|
|
|
2016-03-01: olly
|
|
[Python] Fix isfinite() check to work with GCC6. Fixes
|
|
https://github.com/swig/swig/issues/615 reported by jplesnik.
|
|
|
|
2016-02-17: olly
|
|
[Python] Add missing keywords 'as' and 'with' to pythonkw.swg.
|
|
|
|
2016-02-07: kwwette
|
|
[Octave] recognise various unary functions
|
|
* Use __float__() for numeric conversions, e.g. when calling double()
|
|
* Map various unary functions, e.g. abs() to __abs__(), see full list
|
|
in section 32.3.10 of manual; only available in Octave 3.8.0 or later
|
|
|
|
2016-02-07: kwwette
|
|
[Octave] export function swig_octave_prereq() for testing Octave version
|
|
|
|
2016-02-06: pjohangustavsson
|
|
[C#] Fix duplicate symbol problems when linking the source generated
|
|
from multiple SWIG modules into one shared library for the -namespace
|
|
option. The namespace is now mangled into the global PInvoke function
|
|
names.
|
|
|
|
*** POTENTIAL INCOMPATIBILITY ***
|
|
|
|
2016-01-27: ahnolds
|
|
[Python] Added support for differentiating between Python Bytes
|
|
and Unicode objects using by defining SWIG_PYTHON_STRICT_BYTE_CHAR
|
|
and SWIG_PYTHON_STRICT_UNICODE_WCHAR.
|
|
|
|
2016-01-27: steeve
|
|
[Go] Ensure structs are properly packed between gc and GCC/clang.
|
|
|
|
2016-01-25: ahnolds
|
|
[Python] Support the full Python test suite in -classic mode
|
|
* Convert long/unsigned long/long long/unsigned long long to PyInt
|
|
rather than PyLong when possible. Certain python functions like
|
|
len() require a PyInt when operating on old-style classes.
|
|
* Add support for static methods in classic mode, including support
|
|
for pythonappend, pythonprepend, and docstrings.
|
|
* Removing the use of __swig_getmethods__ for static member methods
|
|
since they will always be found by the standard argument lookup
|
|
* Fix a bug where the wrong type of exception was caught when
|
|
checking for new-style class support
|
|
|
|
2016-01-23: ahnolds
|
|
[Go] Enable support for the Go test-suite on OSX:
|
|
* The linker on OSX requires that all symbols (even weak symbols)
|
|
are defined at link time. Because the function _cgo_topofstack is
|
|
only defined starting in Go version 1.4, we explicitly mark it as
|
|
undefined for older versions of Go on OSX.
|
|
* Avoid writing empty swigargs structs, since empty structs are not
|
|
allowed in extern "C" blocks.
|
|
|
|
2016-01-12: olly
|
|
[Javascript] Look for "nodejs" as well as "node", as it's packaged
|
|
as the former on Debian.
|
|
|
|
2016-01-12: olly
|
|
[Javascript] For v8 >= 4.3.0, use V8_MAJOR_VERSION.
|
|
Fixes https://github.com/swig/swig/issues/561.
|
|
|
|
2016-01-10: ahnolds
|
|
Improved size_t and ptrdiff_t typemaps to support large values
|
|
on platforms where sizeof(size_t) > sizeof(unsigned long) and
|
|
sizeof(ptrdiff_t) > sizeof(long).
|