157 lines
7 KiB
Text
157 lines
7 KiB
Text
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.8 (in progress)
|
|
===========================
|
|
|
|
2015-12-23: ahnolds
|
|
[Python] Fixes for conversion of signed and unsigned integer types:
|
|
|
|
No longer check for PyInt objects in Python3. Because PyInt_Check
|
|
and friends are #defined to the corresponding PyLong methods, this
|
|
had caused errors in Python3 where values greater than what could be
|
|
stored in a long were incorrectly interpreted as the value -1 with
|
|
the Python error indicator set to OverflowError. This applies to
|
|
both the conversions PyLong->long and PyLong->double.
|
|
|
|
Conversion from PyLong to long, unsigned long, long long, and
|
|
unsigned long long now raise OverflowError instead of TypeError in
|
|
both Python2 and Python3 for PyLong values outside the range
|
|
expressible by the corresponding C type. This matches the existing
|
|
behavior for other integral types (signed and unsigned ints, shorts,
|
|
and chars), as well as the conversion for PyInt to all numeric
|
|
types. This also indirectly applies to the size_t and ptrdiff_t
|
|
types, which depend on the conversions for unsigned long and long.
|
|
|
|
2015-12-19: wsfulton
|
|
[Python] Python 2 Unicode UTF-8 strings can be used as inputs to char * or
|
|
std::string types if the generated C/C++ code has SWIG_PYTHON_2_UNICODE defined.
|
|
|
|
2015-12-17: wsfulton
|
|
Issues #286, #128
|
|
Remove ccache-swig.1 man page - please use the CCache.html docs instead.
|
|
The yodl2man and yodl2html tools are no longer used and so SWIG no
|
|
longer has a dependency on these packages which were required when
|
|
building from git.
|
|
|
|
2015-12-16: zturner/coleb
|
|
[Python] Fix Python3.5 interpreter assertions when objects are being
|
|
deleted due to an existing exception. Most notably in generators
|
|
which terminate using a StopIteration exception. Fixes #559 #560 #573.
|
|
If a further exception is raised during an object destruction,
|
|
PyErr_WriteUnraisable is used on this second exception and the
|
|
original exception bubbles through.
|
|
|
|
2015-12-14: ahnolds/wsfulton
|
|
[Python] Add in missing initializers for tp_finalize,
|
|
nb_matrix_multiply, nb_inplace_matrix_multiply, ht_qualname
|
|
ht_cached_keys and tp_prev.
|
|
|
|
2015-12-12: wsfulton
|
|
Fix STL wrappers to not generate <: digraphs.
|
|
For example std::vector<::X::Y> was sometimes generated, now
|
|
corrected to std::vector< ::X::Y >.
|
|
|
|
2015-11-25: wsfulton
|
|
[Ruby] STL ranges and slices fixes.
|
|
|
|
Ruby STL container setting slices fixes:
|
|
|
|
Setting an STL container wrapper slice better matches the way Ruby
|
|
arrays work. The behaviour is now the same as Ruby arrays. The only
|
|
exception is the default value used when expanding a container
|
|
cannot be nil as this is not a valid type/value for C++ container
|
|
elements.
|
|
|
|
Obtaining a Ruby STL container ranges and slices fixes:
|
|
|
|
Access via ranges and slices now behave identically to Ruby arrays.
|
|
The fixes are mostly for out of range indices and lengths.
|
|
- Zero length slice requests return an empty container instead of nil.
|
|
- Slices which request a length greater than the size of the container
|
|
no longer chop off the last element.
|
|
- Ranges which used to return nil now return an empty array when the
|
|
the start element is a valid index.
|
|
|
|
Ruby STL container negative indexing support improved.
|
|
|
|
Using negative indexes to set values works the same as Ruby arrays, eg
|
|
|
|
%template(IntVector) std::vector<int>;
|
|
|
|
iv = IntVector.new([1,2,3,4])
|
|
iv[-4] = 9 # => [1,2,3,9]
|
|
iv[-5] = 9 # => IndexError
|
|
|
|
2015-11-21: wsfulton
|
|
[Ruby, Python] Add std::array container wrappers.
|
|
|
|
These work much like any of the other STL containers except Python/Ruby slicing
|
|
is somewhat limited because the array is a fixed size. Only slices of
|
|
the full size are supported.
|
|
|
|
2015-10-10: wsfulton
|
|
[Python] #539 - Support Python 3.5 and -builtin. PyAsyncMethods is a new
|
|
member in PyHeapTypeObject.
|
|
|
|
2015-10-06: ianlancetaylor
|
|
[Go] Don't emit a constructor function for a director
|
|
class with an abstract method, since the function will
|
|
always panic.
|
|
|
|
2015-10-01: wsfulton
|
|
Fix %shared_ptr support for private and protected inheritance.
|
|
- Remove unnecessary Warning 520: Derived class 'Derived' of 'Base'
|
|
is not similarly marked as a smart pointer
|
|
- Do not generate code that attempts to cast up the inheritance chain in the
|
|
type system runtime in such cases as it doesn't compile and can't be used.
|
|
Remove unnecessary warning 520 for %shared_ptr when the base class is ignored.
|
|
|
|
2015-10-01: vkalinin
|
|
Fix #508: Fix segfault parsing anonymous typedef nested classes.
|
|
|
|
2015-09-26: wsfulton
|
|
[Ruby] Add shared_ptr support
|
|
|
|
2015-09-13: kkaempf
|
|
[Ruby] Resolve tracking bug - issue #225.
|
|
The bug is that the tracking code uses a ruby hash and thus may
|
|
allocate objects (Bignum) while running the GC. This was tolerated in
|
|
1.8 but is invalid (raises an exception) in 1.9.
|
|
The patch uses a C hash (also used by ruby) instead.
|
|
|
|
2015-09-09: lyze
|
|
[CFFI] Extend the "export" feature in the CFFI module to support
|
|
exporting to a specified package.
|
|
|
|
2015-09-04: olly
|
|
[Python] Fix docstrings for %callback functions.
|
|
|
|
2015-09-03: demi-rluddy
|
|
[Go] Removed golang stringing for signed/unsigned char
|
|
|
|
Changed default handling of signed char* and unsigned char* to be
|
|
opaque pointers rather than strings, similarly to how other
|
|
languages work.
|
|
|
|
Any existing code relying on treating signed char* or unsigned
|
|
char* as a string can restore the old behavior with typemaps.i by
|
|
using %apply to copy the [unchanged] char* behavior.
|
|
|
|
*** POTENTIAL INCOMPATIBILITY ***
|
|
|
|
2015-08-07: talby
|
|
[Perl] tidy -Wtautological-constant-out-of-range-compare warnings when building generated code under clang
|
|
|
|
2015-08-07: xantares
|
|
[Python] pep257 & numpydoc conforming docstrings:
|
|
- Mono-line module docsstring
|
|
- Rewrite autodoc parameters section in numpydoc style:
|
|
https://github.com/numpy/numpy/blob/master/doc/HOWTO_DOCUMENT.rst.txt
|
|
- One line summary should end with "."
|
|
- Adds a blank line after class docstring
|
|
|
|
2015-08-05: vadz
|
|
[Java] Make (char* STRING, size_t LENGTH) typemaps usable for
|
|
strings of other types, e.g. "unsigned char*".
|