diff options
Diffstat (limited to 'CHANGES')
-rw-r--r-- | CHANGES | 196 |
1 files changed, 196 insertions, 0 deletions
@@ -3,6 +3,202 @@ SWIG (Simplified Wrapper and Interface Generator) See the CHANGES.current file for changes in the current version. See the RELEASENOTES file for a summary of changes in each release. +Version 3.0.9 (29 May 2016) +=========================== + +2016-05-24: mromberg + [Python] Patch #612 - Add support for Python's implicit namespace packages. + +2016-05-23: wsfulton + [Ruby] Fix #602 - Error handling regression of opaque pointers introduced + in swig-3.0.8 when C functions explicitly reset a pointer using 'DATA_PTR(self) = 0'. + An ObjectPreviouslyDeleted error was incorrectly thrown when the pointer was used + as a parameter. + +2016-05-17: tamuratak + [Ruby] Patch #651 - Correct overloaded function error message when function is + using %newobject. + +2016-05-17: aurelj + [Ruby] Patch #582 - add support for docstring option in %module() + +2016-05-14: wsfulton + Fix #434 - Passing classes by value as parameters in director methods did not create + a copy of the argument leading to invalid memory accesses if the object was used + after the upcall into the target language. Passing arguments by value shouldn't give + rise to these sorts of memory problems and so the objects are now copied and ownership + of their lifetime is controlled by the target language. + +2016-05-07: wsfulton + Fix #611. Fix assertion handling defaultargs when using %extend for a template + class and the extended methods contain default arguments. + +2016-05-05: ejulian + [Python] Patch #617. Fix operator/ wrappers. + +2016-05-02: wsfulton + Fix #669. Don't issue warning about ignoring base classes when the derived class is + itself ignored. + +2016-04-18: ianlancetaylor + [Go] Fix use of goout typemap when calling base method by + forcing the "type" attribute to the value we need. + +2016-04-17: ianlancetaylor + [Go] Fixes for Go 1.6: avoid returning Go pointers from + directors that return string values; add a trailing 0 byte + when treating Go string as C char*. + +2016-04-06: smarchetto + [Scilab] #552 Make Scilab runtime keep track of pointer types + Instead of a Scilab pointer which has no type, SWIG Scilab maps a + pointer to a structure tlist containing the pointer adress and its type. + +2016-04-02: ahnolds + [Python] Apply #598. Fix misleading error message when attempting to read a non-existent + attribute. The previous cryptic error message: + AttributeError: type object 'object' has no attribute '__getattr__' + is now replaced with one mentioning the attribute name, eg: + AttributeError: 'Foo' object has no attribute 'bar' + +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 + 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). + Version 3.0.8 (31 Dec 2015) =========================== |