223 lines
9.4 KiB
Text
223 lines
9.4 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 2.0.10 (in progress)
|
|
============================
|
|
|
|
2013-05-09: kwwette
|
|
[Octave] Fix bugs in Octave module loading:
|
|
- fix a memory leak in setting of global variables
|
|
- install functions only once, to speed up module loads
|
|
|
|
2013-04-28: gjanssens
|
|
[Guile] Updates in guile module:
|
|
- Add support for guile 2.0
|
|
- Drop support for guile 1.6
|
|
- Drop support for generating wrappers using guile's gh interface.
|
|
All generated wrappers will use the scm interface from now on.
|
|
- Deprecate -gh and -scm options. They are no longer needed.
|
|
A warning will be issued when these options are still used.
|
|
- Fix all tests and examples to have a successful travis test
|
|
|
|
2013-04-18: wsfulton
|
|
Apply Patch #36 from Jesus Lopez to add support for $descriptor() special variable macro expansion
|
|
in fragments. For example:
|
|
|
|
%fragment("nameDescriptor", "header")
|
|
%{
|
|
static const char *nameDescriptor = "$descriptor(Name)";
|
|
%}
|
|
|
|
which will generate into the wrapper if the fragment is used:
|
|
|
|
static const char *nameDescriptor = "SWIGTYPE_Name";
|
|
|
|
2013-04-18: wsfulton
|
|
Fix SF Bug #428 - Syntax error when preprocessor macros are defined inside of enum lists, such as:
|
|
|
|
typedef enum {
|
|
eZero = 0
|
|
#define ONE 1
|
|
} EFoo;
|
|
|
|
The macros are silently ignored.
|
|
|
|
2013-04-17: wsfulton
|
|
[C#] Pull patch #34 from BrantKyser to fix smart pointers in conjuction with directors.
|
|
|
|
2013-04-15: kwwette
|
|
[Octave] Fix bugs in output of cleanup code.
|
|
- Cleanup code is now written also after the "fail:" label, so it will be called if
|
|
a SWIG_exception is raised by the wrapping function, consistent with other modules.
|
|
- Octave module now also recognises the "$cleanup" special variable, if needed.
|
|
|
|
2013-04-08: kwwette
|
|
Add -MP option to SWIG for generating phony targets for all dependencies.
|
|
- Prevents make from complaining if header files have been deleted before
|
|
the dependency file has been updated.
|
|
- Modelled on similar option in GCC.
|
|
|
|
2013-04-09: olly
|
|
[PHP] Add missing directorin typemap for char* and char[] which
|
|
fixes director_string testcase failure.
|
|
|
|
2013-04-05: wsfulton
|
|
[Ruby] SF Bug #1292 - Runtime fixes for Proc changes in ruby-1.9 when using STL
|
|
wrappers that override the default predicate, such as:
|
|
|
|
%template(Map) std::map<swig::LANGUAGE_OBJ, swig::LANGUAGE_OBJ, swig::BinaryPredicate<> >;
|
|
|
|
2013-04-05: wsfulton
|
|
[Ruby] SF Bug #1159 - Correctly check rb_respond_to call return values to fix some
|
|
further 1.9 problems with functors and use of Complex wrappers.
|
|
|
|
2013-04-02: wsfulton
|
|
[Ruby] Runtime fixes for std::complex wrappers for ruby-1.9 - new native Ruby complex numbers are used.
|
|
|
|
2013-03-30: wsfulton
|
|
[Ruby] Fix seg fault when using STL containers of generic Ruby types, GC_VALUE or LANGUAGE_OBJECT,
|
|
on exit of the Ruby interpreter. More frequently observed in ruby-1.9.
|
|
|
|
2013-03-29: wsfulton
|
|
[Ruby] Fix delete_if (reject!) for the STL container wrappers which previously would
|
|
sometimes seg fault or not work.
|
|
|
|
2013-03-25: wsfulton
|
|
[Python] Fix some undefined behaviour deleting slices in the STL containers.
|
|
|
|
2013-03-19: wsfulton
|
|
[C#, Java, D] Fix seg fault in SWIG using directors when class and virtual method names are
|
|
the same except being in different namespaces when the %nspace feature is not being used.
|
|
|
|
2013-02-19: kwwette
|
|
Fix bug in SWIG's handling of qualified (e.g. const) variables of array type. Given the typedef
|
|
a(7).q(volatile).double myarray // typedef volatile double[7] myarray;
|
|
the type
|
|
q(const).myarray // const myarray
|
|
becomes
|
|
a(7).q(const volatile).double // const volatile double[7]
|
|
Previously, SwigType_typedef_resolve() produces the type
|
|
q(const).a(7).q(volatile).double // non-sensical type
|
|
which would never match %typemap declarations, whose types were parsed correctly.
|
|
Add typemap_array_qualifiers.i to the test suite which checks for the correct behaviour.
|
|
|
|
2013-02-18: wsfulton
|
|
Deprecate typedef names used as constructor and destructor names in %extend. The real
|
|
class/struct name should be used.
|
|
|
|
typedef struct tagEStruct {
|
|
int ivar;
|
|
} EStruct;
|
|
|
|
%extend tagEStruct {
|
|
EStruct() // illegal name, should be tagEStruct()
|
|
{
|
|
EStruct *s = new EStruct();
|
|
s->ivar = ivar0;
|
|
return s;
|
|
}
|
|
~EStruct() // illegal name, should be ~tagEStruct()
|
|
{
|
|
delete $self;
|
|
}
|
|
}
|
|
|
|
For now these trigger a warning:
|
|
|
|
extend_constructor_destructor.i:107: Warning 522: Use of an illegal constructor name 'EStruct' in
|
|
%extend is deprecated, the constructor name should be 'tagEStruct'.
|
|
extend_constructor_destructor.i:111: Warning 523: Use of an illegal destructor name 'EStruct' in
|
|
%extend is deprecated, the destructor name should be 'tagEStruct'.
|
|
|
|
These %extend destructor and constructor names were valid up to swig-2.0.4, however swig-2.0.5 ignored
|
|
them altogether for C code as reported in SF bug #1306. The old behaviour of using them has been
|
|
restored for now, but is officially deprecated. This does not apply to anonymously defined typedef
|
|
classes/structs such as:
|
|
|
|
typedef struct {...} X;
|
|
|
|
2013-02-17: kwwette
|
|
When generating functions provided by %extend, use "(void)" for no-argument functions
|
|
instead of "()". This prevents warnings when compiling with "gcc -Wstrict-prototypes".
|
|
|
|
2013-02-17: kwwette
|
|
[Octave] Minor fix to autodoc generation: get the right type for functions returning structs.
|
|
|
|
2013-02-15: wsfulton
|
|
Deprecate typedef names used in %extend that are not the real class/struct name. For example:
|
|
|
|
typedef struct StructBName {
|
|
int myint;
|
|
} StructB;
|
|
|
|
%extend StructB {
|
|
void method() {}
|
|
}
|
|
|
|
will now trigger a warning:
|
|
|
|
swig_extend.i:19: Warning 326: Deprecated %extend name used - the struct name StructBName
|
|
should be used instead of the typedef name StructB.
|
|
|
|
This is only partially working anyway (the %extend only worked if placed after the class
|
|
definition).
|
|
|
|
2013-02-09: wsfulton
|
|
[CFFI] Apply patch #22 - Fix missing package before &body
|
|
|
|
2013-01-29: wsfulton
|
|
[Java] Ensure 'javapackage' typemap is used as it stopped working from version 2.0.5.
|
|
|
|
2013-01-28: wsfulton
|
|
[Python] Apply patch SF #334 - Fix default value conversions "TRUE"->True, "FALSE"->False.
|
|
|
|
2013-01-28: wsfulton
|
|
[Java] Apply patch SF #335 - Truly ignore constructors in directors with %ignore.
|
|
|
|
2013-01-18: Brant Kyser
|
|
[Java] Patch #15 - Allow the use of the nspace feature without the -package commandline option.
|
|
This works as long and the new jniclasspackage pragma is used to place the JNI intermediate class
|
|
into a package and the nspace feature is used to place all exposed types into a package.
|
|
|
|
2013-01-15: wsfulton
|
|
Fix Visual Studio examples to work when SWIG is unzipped into a directory containing spaces.
|
|
|
|
2013-01-15: wsfulton
|
|
[C#] Fix cstype typemap lookup for member variables so that a fully qualified variable name
|
|
matches. For example:
|
|
%typemap(cstype) bool MVar::mvar "MyBool"
|
|
struct MVar {
|
|
bool mvar;
|
|
};
|
|
|
|
2013-01-11: Brant Kyser
|
|
[Java, C#, D] SF Bug #1299 - Fix generated names for when %nspace is used on
|
|
classes with the same name in two different namespaces.
|
|
|
|
2013-01-11: Vladimir Kalinin
|
|
[C#] Add support for csdirectorin 'pre', 'post' and 'terminator' attributes.
|
|
|
|
2013-01-08: olly
|
|
[PHP] Fix to work with a ZTS build of PHP (broken in 2.0.7).
|
|
|
|
2013-01-07: olly
|
|
Fix bashism in configure, introduced in 2.0.9.
|
|
|
|
2013-01-06: wsfulton
|
|
Pull patch #4 from ptomulik to fix SF Bug #1296 - Fix incorrect warning for virtual destructors
|
|
in templates, such as:
|
|
Warning 521: Illegal destructor name B< A >::~B(). Ignored.
|
|
|
|
2013-01-05: wsfulton
|
|
[Python] Pull patch #3 from ptomulik to fix SF Bug #1295 - standard exceptions as
|
|
classes using the SWIG_STD_EXCEPTIONS_AS_CLASSES macro.
|
|
|
|
2013-01-04: wsfulton
|
|
[Java] Pull patch #2 from BrantKyser to fix SF Bug #1283 - fix smart pointers in conjuction
|
|
with directors.
|
|
|
|
2013-01-03: wsfulton
|
|
[Java] Pull patch #1 from BrantKyser to fix SF Bug #1278 - fix directors and nspace feature when
|
|
multilevel namespaces are used.
|
|
|