Skip to content

Commit

Permalink
Merge branch 'master' into travis-osx
Browse files Browse the repository at this point in the history
* master:
  Add 3.0.2 release date
  changes file updates
  CHANGES update
  Add runtime test for %extend and nested union
  Fix bug in DohNewStringWithSize(): guarantee string is nul-terminated
  Fix std::vector<bool> compile problems on OSX for Javascript
  test fixed
  Octave: remove deprecated -global/-noglobal command-line arguments
  Octave: use common example.mk for examples, patterned after javascript
  Octave: whitespace/indentation cleanup of octave.cxx
  Octave: remove Python code from std_carray.i
  Octave: ignore generated files
  .gitignore: add Source/TAGS
  Update AX_BOOST_BASE autoconf macro to serial 23
  Search for 64bit webkit during configure
  Fix cleaning of Python runme.py scripts for in-source-tree builds
  check-maintainer-clean: print skipping message for in-source-tree builds
  Fix errors test-suite on windows
  Correct infinity testcase
  Fix infinity testcase on windows
  Add check-maintainer-clean target: fails if files are missed by maintainer-clean
  Set SRCDIR when calling test-suite clean targets, in case it's needed
  Fully clean Python examples and test-suite
  Fully clean PHP test-suite
  Fully clean Javascript test-suite with jsc and v8
  Fix Javascript examples so that "make clean" works properly with node
  Fully clean Go test-suite
  Distclean Tools/javascript
  CCache: always generate docs in source directory
  Test-suite makefile fixes for Windows
  %extend symbols for nested structs get into a wrong C symbol table
  More tests for equality operator overloading
  Moving variable declaration to the beginning of the block
  Add default __eq implementation
  Bump version to 3.0.2
  Fix unused variable warning in Lua bindings
  Javascript: fixed a missing link in documentation.
  Add Javascript to announcements
  Add 3.0.1 release date
  Javascript html links and typo fixes
  Python 3 byte string output: use errors="surrogateescape" change note
  Warning fixes compiling with Visual Studio
  Javascript: added a link to the v8 web-site to the documentation.
  Javascript: updated documentation about known issues.
  JavascriptCore: updated documentation about how to register an initialized module.
  JavascriptCore: added documentation about how to extract details from JSC errors.
  JavaScriptCore: Improved code that uses JSObjectMakeError instead of JSValueToObject to create the exception object.
  JavaScriptCore: Reverted 2 of the JSValueMakeUndefined replacements because those functions are tied to JSObjectRef instead of JSValueRef. The C compiler will allow this, but C++ will reject the conversion.
  JavaScriptCore: Returning NULL for wrapper functions that expect JSValueRef may crash program.
  JavaScriptCore: Fixed exception object so sourceURL (file name), line (number), and message can be recovered.
  Javascript: added a section about known issues.
  • Loading branch information
wsfulton committed Jun 4, 2014
2 parents 530b9f5 + 37c09b0 commit 73047f4
Show file tree
Hide file tree
Showing 82 changed files with 1,024 additions and 886 deletions.
6 changes: 6 additions & 0 deletions .gitignore
Expand Up @@ -85,10 +85,12 @@ swig.spec
.dirstamp
CCache/ccache-swig
CCache/ccache-swig.1
CCache/web/ccache-man.html
Lib/swigwarn.swg
Source/CParse/parser.c
Source/CParse/parser.h
Source/eswig
Source/TAGS
swig
Tools/javascript/javascript

Expand Down Expand Up @@ -123,6 +125,7 @@ Examples/test-suite/tcl/*/
Examples/test-suite/uffi/*/
*_wrap.c
*_wrap.cxx
*-gypcopy.cxx

# C# generated files
*_runme.exe.mdb
Expand All @@ -131,6 +134,9 @@ Examples/test-suite/uffi/*/
# Javascript generated files
*.gyp

# Octave generated files
swigexample*.oct

# Python generated files, based on:
# https://github.com/github/gitignore/blob/master/Python.gitignore
*.py[cod]
Expand Down
2 changes: 1 addition & 1 deletion .travis.yml
Expand Up @@ -49,7 +49,7 @@ script:
- if test -n "$SWIGLANG"; then make -k $SWIGJOBS check-$SWIGLANG-examples CFLAGS="${CFLAGS_EXAMPLES[$SWIGLANG]}" CXXFLAGS="${CXXFLAGS_EXAMPLES[$SWIGLANG]}"; fi
- if test -n "$SWIGLANG"; then make -k $SWIGJOBS check-$SWIGLANG-test-suite; fi
- echo 'Cleaning...' && echo -en 'travis_fold:start:script.3\\r'
- make maintainer-clean && find . -type f | sed 's/^/File left after maintainer-clean - /' && ../../configure $CONFIGOPTS
- make check-maintainer-clean && ../../configure $CONFIGOPTS
- echo -en 'travis_fold:end:script.3\\r'
branches:
only:
Expand Down
18 changes: 9 additions & 9 deletions ANNOUNCE
@@ -1,31 +1,31 @@
*** ANNOUNCE: SWIG 3.0.1 (in progress) ***
*** ANNOUNCE: SWIG 3.0.2 (4 Jun 2014) ***

http://www.swig.org

We're pleased to announce SWIG-3.0.1, the latest SWIG release.
We're pleased to announce SWIG-3.0.2, the latest SWIG release.

What is SWIG?
=============

SWIG is a software development tool that reads C/C++ header files and
generates the wrapper code needed to make C and C++ code accessible
from other programming languages including Perl, Python, Tcl, Ruby,
PHP, C#, Go, Java, Lua, Scheme (Guile, MzScheme, CHICKEN), D, Ocaml,
Pike, Modula-3, Octave, R, Common Lisp (CLISP, Allegro CL, CFFI, UFFI).
SWIG can also export its parse tree in the form of XML and Lisp
s-expressions. Major applications of SWIG include generation of
scripting language extension modules, rapid prototyping, testing,
PHP, C#, Go, Java, Javascript, Lua, Scheme (Guile, MzScheme, CHICKEN),
D, Ocaml, Pike, Modula-3, Octave, R, Common Lisp (CLISP, Allegro CL,
CFFI, UFFI). SWIG can also export its parse tree in the form of XML
and Lisp s-expressions. Major applications of SWIG include generation
of scripting language extension modules, rapid prototyping, testing,
and user interface development for large C/C++ systems.

Availability
============
The release is available for download on Sourceforge at

http://prdownloads.sourceforge.net/swig/swig-3.0.1.tar.gz
http://prdownloads.sourceforge.net/swig/swig-3.0.2.tar.gz

A Windows version is also available at

http://prdownloads.sourceforge.net/swig/swigwin-3.0.1.zip
http://prdownloads.sourceforge.net/swig/swigwin-3.0.2.zip

Please report problems with this release to the swig-devel mailing list,
details at http://www.swig.org/mail.html.
Expand Down
18 changes: 9 additions & 9 deletions CCache/Makefile.in
Expand Up @@ -32,27 +32,27 @@ Makefile: $(srcdir)/Makefile.in ./config.status
$(SHELL) ./config.status

# Note that HTML documentation is actually generated and used from the main SWIG documentation Makefile
docs: $(PACKAGE_NAME).1 web/ccache-man.html
docs: $(srcdir)/$(PACKAGE_NAME).1 $(srcdir)/web/ccache-man.html

$(PACKAGE_NAME)$(EXEEXT): $(OBJS) $(HEADERS)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)

$(PACKAGE_NAME).1: ccache.yo
-yodl2man -o $(PACKAGE_NAME).1 $(srcdir)/ccache.yo
$(srcdir)/$(PACKAGE_NAME).1: $(srcdir)/ccache.yo
-yodl2man -o $(srcdir)/$(PACKAGE_NAME).1 $(srcdir)/ccache.yo

web/ccache-man.html: ccache.yo
yodl2html -o web/ccache-man.html ccache.yo
$(srcdir)/web/ccache-man.html: $(srcdir)/ccache.yo
yodl2html -o $(srcdir)/web/ccache-man.html $(srcdir)/ccache.yo

install: $(PACKAGE_NAME)$(EXEEXT) $(PACKAGE_NAME).1
install: $(PACKAGE_NAME)$(EXEEXT) $(srcdir)/$(PACKAGE_NAME).1
@echo "Installing $(PACKAGE_NAME)"
@echo "Installing $(DESTDIR)${bindir}/`echo $(PACKAGE_NAME) | sed '$(transform)'`$(EXEEXT)"
${INSTALLCMD} -d $(DESTDIR)${bindir}
${INSTALLCMD} -m 755 $(PACKAGE_NAME)$(EXEEXT) $(DESTDIR)${bindir}/`echo $(PACKAGE_NAME) | sed '$(transform)'`$(EXEEXT)
@echo "Installing $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1"
${INSTALLCMD} -d $(DESTDIR)${mandir}/man1
${INSTALLCMD} -m 644 $(PACKAGE_NAME).1 $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1
${INSTALLCMD} -m 644 $(srcdir)/$(PACKAGE_NAME).1 $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1

uninstall: $(PACKAGE_NAME)$(EXEEXT) $(PACKAGE_NAME).1
uninstall: $(PACKAGE_NAME)$(EXEEXT) $(srcdir)/$(PACKAGE_NAME).1
rm -f $(DESTDIR)${bindir}/`echo $(PACKAGE_NAME) | sed '$(transform)'`$(EXEEXT)
rm -f $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1

Expand All @@ -69,7 +69,7 @@ distclean: clean
/bin/rm -rf autom4te.cache

maintainer-clean: distclean
/bin/rm -f $(PACKAGE_NAME).1 web/ccache-man.html
/bin/rm -f $(srcdir)/$(PACKAGE_NAME).1 $(srcdir)/web/ccache-man.html


# FIXME: To fix this, test.sh needs to be able to take ccache from the
Expand Down
84 changes: 84 additions & 0 deletions CHANGES
Expand Up @@ -3,6 +3,90 @@ 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.1 (27 May 2014)
===========================

2014-05-25: hfalcic
[Python] Python 3 byte string output: use errors="surrogateescape"
if available on the version of Python that's in use. This allows
obtaining the original byte string (and potentially trying a fallback
encoding) if the bytes can't be decoded as UTF-8.

Previously, a UnicodeDecodeError would be raised with no way to treat
the data as bytes or try another codec.

2014-05-18: vkalinin
Bug #175 - Restore %extend to work for unnamed nested structures by using a C
symbol comprising the outer structure name and unnamed variable instance name.

2014-05-15: kwwette
Add #166 - 'make check' now works out of source. This required te examples to build
out of source. The main languages have been tested - C#, Go, Guile, Java, Javascript,
Lua, Octave, Perl, PHP, Python, Ruby and Tcl.

2014-05-01: Oliver Buchtala
Javascript support added, see Javascript chapter in the documentation.

2014-05-01: olly
[PHP] The generated __isset() method now returns true for read-only properties.

2014-04-24: kwwette
[Go] Fix go ./configure parsing of gccgo --version, and
goruntime.swg typo in __GNUC_PATCHLEVEL__ (SF Bug #1298)

2014-04-24: kwwette
Fix {python|perl5|ruby|tcl}/java examples

In Lib/gcj/cni.i, for compatibility with newer gcj versions:

- remove JvAllocObject() which gcj no longer defines, from gcj Changelog:
2004-04-16 Bryce McKinlay <mckinlay@redhat.com>
* gcj/cni.h (JvAllocObject): Remove these obsolete,
undocumented CNI calls.

- change JvCreateJavaVM() argument from void* to JvVMInitArgs*, from gcj Changelog:
2005-02-23 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/16923
...
(JvCreateJavaVM): Declare vm_args as JvVMInitArgs* rather than void*.

*** POTENTIAL INCOMPATIBILITY ***

2014-04-08: wsfulton
SF Bug #1366 - Remove duplicate declarations of strtoimax and strtoumax in inttypes.i

2014-04-08: wsfulton
[Java C#] Enums which have been ignored via %ignore and are subsequently
used are handled slightly differently. Type wrapper classes are now generated
which are effectively a wrapper of an empty enum. Previously in Java uncompilable
code was generated and in C# an int was used.

2014-04-04: wsfulton
Fix regression in 3.0.0 where legal code following an operator<< definition might
give a syntax error. SF Bug #1365.

2014-04-03: olly
[PHP] Fix wrapping director constructors with default parameters
with a ZTS-enabled build of PHP.

2014-04-02: olly
[PHP] Pass the ZTS context we already have to avoid needing to
call TSRMLS_FETCH, which is relatively expensive.

2014-04-02: olly
[PHP] Pass ZTS context through to t_output_helper() so it works
with a ZTS-enabled build of PHP. Reported by Pierre Labastie in
github PR#155.

2014-03-28: wsfulton
[Java C# D Go] Fixes for C enums used in an API and the definition of the enum
has not been parsed. For D, this fixes a segfault in SWIG. The other languages
now produce code that compiles, although the definition of the enum is needed
in order to use the enum properly from the target language.

2014-03-23: v-for-vandal
[Lua] Fix for usage of snprintf in Lua runtime which Visual Studio does not have.

Version 3.0.0 (16 Mar 2014)
===========================

Expand Down
79 changes: 12 additions & 67 deletions CHANGES.current
Expand Up @@ -2,77 +2,22 @@ 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.1 (in progress)
Version 3.0.2 (4 Jun 2014)
===========================

2014-05-18: vkalinin
Bug #175 - Restore %extend to work for unnamed nested structures by using a C
symbol comprising the outer structure name and unnamed variable instance name.
2014-06-02: v-for-vandal
[Lua] Pull request #176:
If class has no __eq implemented, then default __eq is generated.
Default __eq compares actual pointers stored inside Lua userdata.

2014-05-15: kwwette
Add #166 - 'make check' now works out of source. This required te examples to build
out of source. The main languages have been tested - C#, Go, Guile, Java, Javascript,
Lua, Octave, Perl, PHP, Python, Ruby and Tcl.
2014-06-02: vkalinin
Fix #183 - %extend and unnamed nested structs

2014-05-01: Oliver Buchtala
Javascript support added, see Javascript chapter in the documentation.
2014-05-28: kwwette
Fix install failure when using an 'out of source' build using the shipped
tarball - regression introduced in swig-3.0.1.

2014-05-01: olly
[PHP] The generated __isset() method now returns true for read-only properties.

2014-04-24: kwwette
[Go] Fix go ./configure parsing of gccgo --version, and
goruntime.swg typo in __GNUC_PATCHLEVEL__ (SF Bug #1298)

2014-04-24: kwwette
Fix {python|perl5|ruby|tcl}/java examples

In Lib/gcj/cni.i, for compatibility with newer gcj versions:

- remove JvAllocObject() which gcj no longer defines, from gcj Changelog:
2004-04-16 Bryce McKinlay <mckinlay@redhat.com>
* gcj/cni.h (JvAllocObject): Remove these obsolete,
undocumented CNI calls.

- change JvCreateJavaVM() argument from void* to JvVMInitArgs*, from gcj Changelog:
2005-02-23 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/16923
...
(JvCreateJavaVM): Declare vm_args as JvVMInitArgs* rather than void*.
2014-05-24: kwwette
[Octave] Remove deprecated -global/-noglobal command-line arguments

*** POTENTIAL INCOMPATIBILITY ***

2014-04-08: wsfulton
SF Bug #1366 - Remove duplicate declarations of strtoimax and strtoumax in inttypes.i

2014-04-08: wsfulton
[Java C#] Enums which have been ignored via %ignore and are subsequently
used are handled slightly differently. Type wrapper classes are now generated
which are effectively a wrapper of an empty enum. Previously in Java uncompilable
code was generated and in C# an int was used.

2014-04-04: wsfulton
Fix regression in 3.0.0 where legal code following an operator<< definition might
give a syntax error. SF Bug #1365.

2014-04-03: olly
[PHP] Fix wrapping director constructors with default parameters
with a ZTS-enabled build of PHP.

2014-04-02: olly
[PHP] Pass the ZTS context we already have to avoid needing to
call TSRMLS_FETCH, which is relatively expensive.

2014-04-02: olly
[PHP] Pass ZTS context through to t_output_helper() so it works
with a ZTS-enabled build of PHP. Reported by Pierre Labastie in
github PR#155.

2014-03-28: wsfulton
[Java C# D Go] Fixes for C enums used in an API and the definition of the enum
has not been parsed. For D, this fixes a segfault in SWIG. The other languages
now produce code that compiles, although the definition of the enum is needed
in order to use the enum properly from the target language.

2014-03-23: v-for-vandal
[Lua] Fix for usage of snprintf in Lua runtime which Visual Studio does not have.
4 changes: 3 additions & 1 deletion Doc/Manual/Contents.html
Expand Up @@ -1056,7 +1056,7 @@ <h3><a href="Javascript.html#Javascript">26 SWIG and Javascript</a></h3>
<ul>
<li><a href="Javascript.html#Javascript_running_swig">Running SWIG</a>
<li><a href="Javascript.html#Javascript_running_tests_examples">Running Tests and Examples</a>
<li><a href="Javascript.html#Javascript_future_work">Future work</a>
<li><a href="Javascript.html#Javascript_known_issues">Known Issues</a>
</ul>
<li><a href="Javascript.html#Javascript_integration">Integration</a>
<ul>
Expand All @@ -1082,6 +1082,7 @@ <h3><a href="Javascript.html#Javascript">26 SWIG and Javascript</a></h3>
<li><a href="Javascript.html#Javascript_code_templates">Code Templates</a>
<li><a href="Javascript.html#Javascript_emitter">Emitter</a>
<li><a href="Javascript.html#Javascript_emitter_states">Emitter states</a>
<li><a href="Javascript.html#Javascript_jsc_exceptions">Handling Exceptions in JavascriptCore</a>
</ul>
</ul>
</div>
Expand Down Expand Up @@ -1566,6 +1567,7 @@ <h3><a href="Python.html#Python">36 SWIG and Python</a></h3>
<li><a href="Python.html#Python_nn74">Function annotation</a>
<li><a href="Python.html#Python_nn75">Buffer interface</a>
<li><a href="Python.html#Python_nn76">Abstract base classes</a>
<li><a href="Python.html#Python_nn77">Byte string output conversion</a>
</ul>
</ul>
</div>
Expand Down

0 comments on commit 73047f4

Please sign in to comment.