Bump version to 3.0.0
SWIG 3 is open for business - looks go crazy!
This commit is contained in:
parent
b0b8d4c87e
commit
37bccfd517
6 changed files with 148 additions and 144 deletions
8
ANNOUNCE
8
ANNOUNCE
|
|
@ -1,8 +1,8 @@
|
||||||
*** ANNOUNCE: SWIG 2.0.11 (15 Sep 2013) ***
|
*** ANNOUNCE: SWIG 3.0.0 (in progress) ***
|
||||||
|
|
||||||
http://www.swig.org
|
http://www.swig.org
|
||||||
|
|
||||||
We're pleased to announce SWIG-2.0.11, the latest SWIG release.
|
We're pleased to announce SWIG-3.0.0, the latest SWIG release.
|
||||||
|
|
||||||
What is SWIG?
|
What is SWIG?
|
||||||
=============
|
=============
|
||||||
|
|
@ -21,11 +21,11 @@ Availability
|
||||||
============
|
============
|
||||||
The release is available for download on Sourceforge at
|
The release is available for download on Sourceforge at
|
||||||
|
|
||||||
http://prdownloads.sourceforge.net/swig/swig-2.0.11.tar.gz
|
http://prdownloads.sourceforge.net/swig/swig-3.0.0.tar.gz
|
||||||
|
|
||||||
A Windows version is also available at
|
A Windows version is also available at
|
||||||
|
|
||||||
http://prdownloads.sourceforge.net/swig/swigwin-2.0.11.zip
|
http://prdownloads.sourceforge.net/swig/swigwin-3.0.0.zip
|
||||||
|
|
||||||
Please report problems with this release to the swig-devel mailing list,
|
Please report problems with this release to the swig-devel mailing list,
|
||||||
details at http://www.swig.org/mail.html.
|
details at http://www.swig.org/mail.html.
|
||||||
|
|
|
||||||
138
CHANGES
138
CHANGES
|
|
@ -3,6 +3,144 @@ SWIG (Simplified Wrapper and Interface Generator)
|
||||||
See the CHANGES.current file for changes in the current version.
|
See the CHANGES.current file for changes in the current version.
|
||||||
See the RELEASENOTES file for a summary of changes in each release.
|
See the RELEASENOTES file for a summary of changes in each release.
|
||||||
|
|
||||||
|
|
||||||
|
Version 2.0.11 (15 Sep 2013)
|
||||||
|
============================
|
||||||
|
|
||||||
|
2013-09-15: wsfulton
|
||||||
|
[R] Fix attempt to free a non-heap object in OUTPUT typemaps for:
|
||||||
|
unsigned short *OUTPUT
|
||||||
|
unsigned long *OUTPUT
|
||||||
|
signed long long *OUTPUT
|
||||||
|
char *OUTPUT
|
||||||
|
signed char*OUTPUT
|
||||||
|
unsigned char*OUTPUT
|
||||||
|
|
||||||
|
2013-09-12: wsfulton
|
||||||
|
[Lua] Pull Git patch #62.
|
||||||
|
1) Static members and static functions inside class can be accessed as
|
||||||
|
ModuleName.ClassName.FunctionName (MemberName respectively). Old way such as
|
||||||
|
ModuleName.ClassName_FunctionName still works.
|
||||||
|
2) Same goes for enums inside classes: ModuleName.ClassName.EnumValue1 etc.
|
||||||
|
|
||||||
|
2013-09-12: wsfulton
|
||||||
|
[UTL] Infinity is now by default an acceptable value for type 'float'. This fix makes
|
||||||
|
the handling of type 'float' and 'double' the same. The implementation requires the
|
||||||
|
C99 isfinite() macro, or otherwise some platform dependent equivalents, to be available.
|
||||||
|
|
||||||
|
Users requiring the old behaviour of not accepting infinity, can define a 'check' typemap
|
||||||
|
wherever a float is used, such as:
|
||||||
|
|
||||||
|
%typemap(check,fragment="<float.h>") float, const float & %{
|
||||||
|
if ($1 < -FLT_MAX || $1 > FLT_MAX) {
|
||||||
|
SWIG_exception_fail(SWIG_TypeError, "Overflow in type float");
|
||||||
|
}
|
||||||
|
%}
|
||||||
|
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2013-08-30: wsfulton
|
||||||
|
[Lua] Pull Git patch #81: Include Lua error locus in SWIG error messages.
|
||||||
|
This is standard information in Lua error messages, and makes it much
|
||||||
|
easier to find bugs.
|
||||||
|
|
||||||
|
2013-08-29: wsfulton
|
||||||
|
Pull Git patch #75: Handle UTF-8 files with BOM at beginning of file. Was giving an
|
||||||
|
'Illegal token' syntax error.
|
||||||
|
|
||||||
|
2013-08-29: wsfulton
|
||||||
|
[C#] Pull Git patch #77: Allow exporting std::map using non-default comparison function.
|
||||||
|
|
||||||
|
2013-08-28: wsfulton
|
||||||
|
[Python] %implicitconv is improved for overloaded functions. Like in C++, the methods
|
||||||
|
with the actual types are considered before trying implicit conversions. Example:
|
||||||
|
|
||||||
|
%implicitconv A;
|
||||||
|
struct A {
|
||||||
|
A(int i);
|
||||||
|
};
|
||||||
|
class CCC {
|
||||||
|
public:
|
||||||
|
int xx(int i) { return 11; }
|
||||||
|
int xx(const A& i) { return 22; }
|
||||||
|
};
|
||||||
|
|
||||||
|
The following python code:
|
||||||
|
|
||||||
|
CCC().xx(-1)
|
||||||
|
|
||||||
|
will now return 11 instead of 22 - the implicit conversion is not done.
|
||||||
|
|
||||||
|
2013-08-23: olly
|
||||||
|
[Python] Fix clang++ warning in generated wrapper code.
|
||||||
|
|
||||||
|
2013-08-16: wsfulton
|
||||||
|
[Python] %implicitconv will now accept None where the implicit conversion takes a C/C++ pointer.
|
||||||
|
Problem highlighted by Bo Peng. Closes SF patch #230.
|
||||||
|
|
||||||
|
2013-08-07: wsfulton
|
||||||
|
[Python] SF Patch #326 from Kris Thielemans - Remove SwigPyObject_print and SwigPyObject_str and
|
||||||
|
make the generated wrapper use the default python implementations, which will fall back to repr
|
||||||
|
(for -builtin option).
|
||||||
|
|
||||||
|
Advantages:
|
||||||
|
- it avoids the swig user having to jump through hoops to get print to work as expected when
|
||||||
|
redefining repr/str slots.
|
||||||
|
- typing the name of a variable on the python prompt now prints the result of a (possibly redefined)
|
||||||
|
repr, without the swig user having to do any extra work.
|
||||||
|
- when redefining repr, the swig user doesn't necessarily have to redefine str as it will call the
|
||||||
|
redefined repr
|
||||||
|
- the behaviour is exactly the same as without the -builtin option while requiring no extra work
|
||||||
|
by the user (aside from adding the %feature("python:slot...) statements of course)
|
||||||
|
|
||||||
|
Disadvantage:
|
||||||
|
- default str() will give different (but clearer?) output on swigged classes
|
||||||
|
|
||||||
|
2013-07-30: wsfulton
|
||||||
|
[Python, Ruby] Fix #64 #65: Missing code in std::multimap wrappers. Previously an instantiation
|
||||||
|
of a std::map was erroneously required in addition to an instantiation of std::multimap with the
|
||||||
|
same template parameters to prevent compilation errors for the wrappers of a std::multimap.
|
||||||
|
|
||||||
|
2013-07-14: joequant
|
||||||
|
[R] Change types file to allow for SEXP return values
|
||||||
|
|
||||||
|
2013-07-05: wsfulton
|
||||||
|
[Python] Add %pythonbegin directive which works like %pythoncode, except the specified code is
|
||||||
|
added at the beginning of the generated .py file. This is primarily needed for importing from
|
||||||
|
__future__ statements required to be at the very beginning of the file. Example:
|
||||||
|
|
||||||
|
%pythonbegin %{
|
||||||
|
from __future__ import print_function
|
||||||
|
print("Loading", "Whizz", "Bang", sep=' ... ')
|
||||||
|
%}
|
||||||
|
|
||||||
|
2013-07-01: wsfulton
|
||||||
|
[Python] Apply SF patch #340 - Uninitialized variable fix in SWIG_Python_NonDynamicSetAttr
|
||||||
|
when using -builtin.
|
||||||
|
|
||||||
|
2013-07-01: wsfulton
|
||||||
|
[Python, Ruby, Ocaml] Apply SF patch #341 - fix a const_cast in generated code that was generating
|
||||||
|
a <:: digraph when using the unary scope operator (::) (global scope) in a template type.
|
||||||
|
|
||||||
|
2013-07-01: wsfulton
|
||||||
|
[Python] Add SF patch #342 from Christian Delbaere to fix some director classes crashing on
|
||||||
|
object deletion when using -builtin. Fixes SF bug #1301.
|
||||||
|
|
||||||
|
2013-06-11: wsfulton
|
||||||
|
[Python] Add SWIG_PYTHON_INTERPRETER_NO_DEBUG macro which can be defined to use the Release version
|
||||||
|
of the Python interpreter in Debug builds of the wrappers. The Visual Studio .dsp example
|
||||||
|
files have been modified to use this so that Debug builds will now work without having
|
||||||
|
to install or build a Debug build of the interpreter.
|
||||||
|
|
||||||
|
2013-06-07: wsfulton
|
||||||
|
[Ruby] Git issue #52. Fix regression with missing rb_complex_new function for Ruby
|
||||||
|
versions prior to 1.9 using std::complex wrappers if just using std::complex as an output type.
|
||||||
|
Also fix the Complex helper functions external visibility (to static by default).
|
||||||
|
|
||||||
|
2013-06-04: olly
|
||||||
|
[PHP] Fix SWIG_ZTS_ConvertResourcePtr() not to dereference NULL
|
||||||
|
if the type lookup fails.
|
||||||
|
|
||||||
Version 2.0.10 (27 May 2013)
|
Version 2.0.10 (27 May 2013)
|
||||||
============================
|
============================
|
||||||
|
|
||||||
|
|
|
||||||
136
CHANGES.current
136
CHANGES.current
|
|
@ -2,140 +2,6 @@ Below are the changes for the current release.
|
||||||
See the CHANGES file for changes in older releases.
|
See the CHANGES file for changes in older releases.
|
||||||
See the RELEASENOTES file for a summary of changes in each release.
|
See the RELEASENOTES file for a summary of changes in each release.
|
||||||
|
|
||||||
Version 2.0.11 (15 Sep 2013)
|
Version 3.0.0 (in progress)
|
||||||
============================
|
============================
|
||||||
|
|
||||||
2013-09-15: wsfulton
|
|
||||||
[R] Fix attempt to free a non-heap object in OUTPUT typemaps for:
|
|
||||||
unsigned short *OUTPUT
|
|
||||||
unsigned long *OUTPUT
|
|
||||||
signed long long *OUTPUT
|
|
||||||
char *OUTPUT
|
|
||||||
signed char*OUTPUT
|
|
||||||
unsigned char*OUTPUT
|
|
||||||
|
|
||||||
2013-09-12: wsfulton
|
|
||||||
[Lua] Pull Git patch #62.
|
|
||||||
1) Static members and static functions inside class can be accessed as
|
|
||||||
ModuleName.ClassName.FunctionName (MemberName respectively). Old way such as
|
|
||||||
ModuleName.ClassName_FunctionName still works.
|
|
||||||
2) Same goes for enums inside classes: ModuleName.ClassName.EnumValue1 etc.
|
|
||||||
|
|
||||||
2013-09-12: wsfulton
|
|
||||||
[UTL] Infinity is now by default an acceptable value for type 'float'. This fix makes
|
|
||||||
the handling of type 'float' and 'double' the same. The implementation requires the
|
|
||||||
C99 isfinite() macro, or otherwise some platform dependent equivalents, to be available.
|
|
||||||
|
|
||||||
Users requiring the old behaviour of not accepting infinity, can define a 'check' typemap
|
|
||||||
wherever a float is used, such as:
|
|
||||||
|
|
||||||
%typemap(check,fragment="<float.h>") float, const float & %{
|
|
||||||
if ($1 < -FLT_MAX || $1 > FLT_MAX) {
|
|
||||||
SWIG_exception_fail(SWIG_TypeError, "Overflow in type float");
|
|
||||||
}
|
|
||||||
%}
|
|
||||||
|
|
||||||
*** POTENTIAL INCOMPATIBILITY ***
|
|
||||||
|
|
||||||
2013-08-30: wsfulton
|
|
||||||
[Lua] Pull Git patch #81: Include Lua error locus in SWIG error messages.
|
|
||||||
This is standard information in Lua error messages, and makes it much
|
|
||||||
easier to find bugs.
|
|
||||||
|
|
||||||
2013-08-29: wsfulton
|
|
||||||
Pull Git patch #75: Handle UTF-8 files with BOM at beginning of file. Was giving an
|
|
||||||
'Illegal token' syntax error.
|
|
||||||
|
|
||||||
2013-08-29: wsfulton
|
|
||||||
[C#] Pull Git patch #77: Allow exporting std::map using non-default comparison function.
|
|
||||||
|
|
||||||
2013-08-28: wsfulton
|
|
||||||
[Python] %implicitconv is improved for overloaded functions. Like in C++, the methods
|
|
||||||
with the actual types are considered before trying implicit conversions. Example:
|
|
||||||
|
|
||||||
%implicitconv A;
|
|
||||||
struct A {
|
|
||||||
A(int i);
|
|
||||||
};
|
|
||||||
class CCC {
|
|
||||||
public:
|
|
||||||
int xx(int i) { return 11; }
|
|
||||||
int xx(const A& i) { return 22; }
|
|
||||||
};
|
|
||||||
|
|
||||||
The following python code:
|
|
||||||
|
|
||||||
CCC().xx(-1)
|
|
||||||
|
|
||||||
will now return 11 instead of 22 - the implicit conversion is not done.
|
|
||||||
|
|
||||||
2013-08-23: olly
|
|
||||||
[Python] Fix clang++ warning in generated wrapper code.
|
|
||||||
|
|
||||||
2013-08-16: wsfulton
|
|
||||||
[Python] %implicitconv will now accept None where the implicit conversion takes a C/C++ pointer.
|
|
||||||
Problem highlighted by Bo Peng. Closes SF patch #230.
|
|
||||||
|
|
||||||
2013-08-07: wsfulton
|
|
||||||
[Python] SF Patch #326 from Kris Thielemans - Remove SwigPyObject_print and SwigPyObject_str and
|
|
||||||
make the generated wrapper use the default python implementations, which will fall back to repr
|
|
||||||
(for -builtin option).
|
|
||||||
|
|
||||||
Advantages:
|
|
||||||
- it avoids the swig user having to jump through hoops to get print to work as expected when
|
|
||||||
redefining repr/str slots.
|
|
||||||
- typing the name of a variable on the python prompt now prints the result of a (possibly redefined)
|
|
||||||
repr, without the swig user having to do any extra work.
|
|
||||||
- when redefining repr, the swig user doesn't necessarily have to redefine str as it will call the
|
|
||||||
redefined repr
|
|
||||||
- the behaviour is exactly the same as without the -builtin option while requiring no extra work
|
|
||||||
by the user (aside from adding the %feature("python:slot...) statements of course)
|
|
||||||
|
|
||||||
Disadvantage:
|
|
||||||
- default str() will give different (but clearer?) output on swigged classes
|
|
||||||
|
|
||||||
2013-07-30: wsfulton
|
|
||||||
[Python, Ruby] Fix #64 #65: Missing code in std::multimap wrappers. Previously an instantiation
|
|
||||||
of a std::map was erroneously required in addition to an instantiation of std::multimap with the
|
|
||||||
same template parameters to prevent compilation errors for the wrappers of a std::multimap.
|
|
||||||
|
|
||||||
2013-07-14: joequant
|
|
||||||
[R] Change types file to allow for SEXP return values
|
|
||||||
|
|
||||||
2013-07-05: wsfulton
|
|
||||||
[Python] Add %pythonbegin directive which works like %pythoncode, except the specified code is
|
|
||||||
added at the beginning of the generated .py file. This is primarily needed for importing from
|
|
||||||
__future__ statements required to be at the very beginning of the file. Example:
|
|
||||||
|
|
||||||
%pythonbegin %{
|
|
||||||
from __future__ import print_function
|
|
||||||
print("Loading", "Whizz", "Bang", sep=' ... ')
|
|
||||||
%}
|
|
||||||
|
|
||||||
2013-07-01: wsfulton
|
|
||||||
[Python] Apply SF patch #340 - Uninitialized variable fix in SWIG_Python_NonDynamicSetAttr
|
|
||||||
when using -builtin.
|
|
||||||
|
|
||||||
2013-07-01: wsfulton
|
|
||||||
[Python, Ruby, Ocaml] Apply SF patch #341 - fix a const_cast in generated code that was generating
|
|
||||||
a <:: digraph when using the unary scope operator (::) (global scope) in a template type.
|
|
||||||
|
|
||||||
2013-07-01: wsfulton
|
|
||||||
[Python] Add SF patch #342 from Christian Delbaere to fix some director classes crashing on
|
|
||||||
object deletion when using -builtin. Fixes SF bug #1301.
|
|
||||||
|
|
||||||
2013-06-11: wsfulton
|
|
||||||
[Python] Add SWIG_PYTHON_INTERPRETER_NO_DEBUG macro which can be defined to use the Release version
|
|
||||||
of the Python interpreter in Debug builds of the wrappers. The Visual Studio .dsp example
|
|
||||||
files have been modified to use this so that Debug builds will now work without having
|
|
||||||
to install or build a Debug build of the interpreter.
|
|
||||||
|
|
||||||
2013-06-07: wsfulton
|
|
||||||
[Ruby] Git issue #52. Fix regression with missing rb_complex_new function for Ruby
|
|
||||||
versions prior to 1.9 using std::complex wrappers if just using std::complex as an output type.
|
|
||||||
Also fix the Complex helper functions external visibility (to static by default).
|
|
||||||
|
|
||||||
2013-06-04: olly
|
|
||||||
[PHP] Fix SWIG_ZTS_ConvertResourcePtr() not to dereference NULL
|
|
||||||
if the type lookup fails.
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>SWIG-2.0 Documentation</title>
|
<title>SWIG-3.0 Documentation</title>
|
||||||
</head>
|
</head>
|
||||||
<body bgcolor="#ffffff">
|
<body bgcolor="#ffffff">
|
||||||
<H1><a name="Sections"></a>SWIG-2.0 Documentation</H1>
|
<H1><a name="Sections"></a>SWIG-3.0 Documentation</H1>
|
||||||
|
|
||||||
Last update : SWIG-2.0.11 (15 Sep 2013)
|
Last update : SWIG-3.0.0 (in progress)
|
||||||
|
|
||||||
<H2>Sections</H2>
|
<H2>Sections</H2>
|
||||||
|
|
||||||
|
|
|
||||||
2
README
2
README
|
|
@ -1,6 +1,6 @@
|
||||||
SWIG (Simplified Wrapper and Interface Generator)
|
SWIG (Simplified Wrapper and Interface Generator)
|
||||||
|
|
||||||
Version: 2.0.11 (15 Sep 2013)
|
Version: 3.0.0 (in progress)
|
||||||
|
|
||||||
Tagline: SWIG is a compiler that integrates C and C++ with languages
|
Tagline: SWIG is a compiler that integrates C and C++ with languages
|
||||||
including Perl, Python, Tcl, Ruby, PHP, Java, C#, D, Go, Lua,
|
including Perl, Python, Tcl, Ruby, PHP, Java, C#, D, Go, Lua,
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
|
||||||
dnl The macros which aren't shipped with the autotools are stored in the
|
dnl The macros which aren't shipped with the autotools are stored in the
|
||||||
dnl Tools/config directory in .m4 files.
|
dnl Tools/config directory in .m4 files.
|
||||||
|
|
||||||
AC_INIT([swig],[2.0.11],[http://www.swig.org])
|
AC_INIT([swig],[3.0.0],[http://www.swig.org])
|
||||||
|
|
||||||
dnl NB: When this requirement is increased to 2.60 or later, AC_PROG_SED
|
dnl NB: When this requirement is increased to 2.60 or later, AC_PROG_SED
|
||||||
dnl definition below can be removed
|
dnl definition below can be removed
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue