|
|
SWIG News
- 2011/05/21 - SWIG-2.0.4 released
- SWIG-2.0.4 release summary:
- This is mainly a Python oriented release including support for Python built-in types for superior performance with the new -builtin option. The -builtin option is especially suitable for performance-critical libraries and applications that call wrapped methods repeatedly. See the python-specific chapter of the SWIG manual for more info. - Python 3.2 support has also been added and various Python bugs have been fixed. - Octave 3.4 support has also been added. - There are also the usual minor generic improvements, as well as bug fixes and enhancements for D, Guile, Lua, Octave, Perl and Tcl. - 2011/03/29 - SWIG-2.0.3 released
- SWIG-2.0.3 has been released. This is a bug fix release including a couple of fixes for regressions in the 2.0 series.
- 2011/02/20 - SWIG-2.0.2 released
- SWIG-2.0.2 has been released and includes the following changes:
- Support for the D language has been added. - Various bug fixes and minor enhancements. - Bug fixes particular to the Clisp, C#, Go, MzScheme, Ocaml, PHP, R, Ruby target languages. - 2010/10/04 - SWIG-2.0.1 released
- SWIG-2.0.1 has been released and includes the following changes:
- Support for the Go language has been added. - New regular expression (regex) encoder for renaming symbols based on the Perl Compatible Regular Expressions (PCRE) library - http://pcre.org . - Numerous fixes in reporting file and line numbers in error and warning messages. - Various bug fixes and improvements in the C#, Lua, Perl, PHP, Ruby and Python language modules. - 2010/06/03 - SWIG-2.0.0 released
- SWIG-2.0.0 has been released. The following are the main changes:
- License changes, see LICENSE file and http://www.swig.org/legal.html . - Much better nested class/struct support. - Much improved template partial specialization and explicit specialization handling. - Namespace support improved with the 'nspace' feature where namespaces can be automatically translated into Java packages or C# namespaces. - Improved typemap and symbol table debugging. - Numerous subtle typemap matching rule changes when using the default (SWIGTYPE) type. These now work much like C++ class template partial specialization matching. - Other small enhancements for typemaps. Typemap fragments are also now official and documented. - Warning and error display refinements. - Wrapping of shared_ptr is improved and documented now. - Numerous C++ unary scope operator (::) fixes. - Better support for boolean expressions. - Various bug fixes and improvements in the Allegrocl, C#, Java, Lua, Octave, PHP, Python, R, Ruby and XML modules. - 2010/04/20 - SWIG joins the Software Freedom Conservancy
- The Software Freedom Conservancy has just announced that SWIG has been accepted as a member of the Conservancy - http://sfconservancy.org/news/2010/apr/20/swig-joins/ . Being part of the Conservancy and all the good work it does for free and open source software is great news for SWIG. The Conservancy provides many benefits such as a formal legal structure and will help ensure the vitality of SWIG as the Conservancy is able to handle donations to the SWIG project. Please visit our new http://www.swig.org/donate.html donations page.
- 2009/09/23 - SWIG's Second Summer of code
- SWIG is a programmer's tool designed to make it easier to use C and C++ code from other popular programming languages such as Python, Perl, Ruby, PHP, Java, and C#. 2009 was SWIG's second Summer of Code, and this year we mentored five projects related to SWIG. All five students were very active over the summer period and produced some great new features. In no particular order:
Matevz Jekovec has been busy working at the coal face of SWIG to add support for C++0x, the forthcoming C++ standard. Matevz has managed to achieve close to full support for C++0x. The C++0x Wikipaedia article http://en.wikipedia.org/wiki/C%2B%2B0x details the numerous planned new C++0x features and Matevž has put together a SWIG C++0x page (http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2009-matevz/Doc/Manual/Cpp0x.html) documenting the new SWIG support for each of these. In summary the enhanced C++ language can now be parsed by SWIG, which in itself is a great step. There is much more than just this though, as most of the information parsed is used to create useful wrappers of C++0x code. The work can be tried out on the C++0x branch http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2009-matevz which should be merged fairly soon into a forthcoming release.
Miklos Vajna has been working on SWIG's PHP support to implement an advanced SWIG feature already supported for most other target languages, but not PHP. The feature is called "directors" and allows cross-language polymorphism - wrapped C++ classes can be subclassed in PHP and virtual method calls work in the natural way, whether they're made from PHP or C++ code. You can read more in the new PHP Director documentation http://www.swig.org/Doc1.3/Php.html#Php_nn3 . Miklos made such great progress that we were able to merge this support into SWIG 1.3.40, which was released even before the Summer of Code finished. Miklos also spent some time working on improving SWIG's testsuite for PHP, and fixing bugs in the PHP support.
Ashish Sharma spent the summer adding support for Objective-C as a new target language. Objective-C is a major language on the Mac OS X platform. This means that now SWIG can be used to generate Objective-C wrappers over C++ code. In particular the wrappers include proxy classes, which preserve the class hierarchy from the C++ code. Ultimately this means that from the user's perspective, proxy objects look no different to objects originally written in Objective-C. Adding a new target language is quite a considerable task and Ashish is keen to add plenty more improvements over the coming months. Ashish's work is in Subversion and can be accessed in the ashishs99 branch http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2009-ashishs99 .
Baozeng Ding has also added a new target language, in this case for the Scilab language, a free numerical computing package. He has coded up support for all the C features: variables, functions, constants, enums, structs, unions, pointers and arrays and also intends to develop it further in the near future. Documentation for SWIG and Scilab can be viewed online direct from Baozeng's Subversion branch http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2009-sploving/Doc/Manual/Scilab.html .
Kosei Moriyama has been working on Perl bindings for the Xapian library using SWIG, to replace some existing bindings implemented by hand. He's achieved almost complete compatibility with the API of the existing bindings (the only real omission is callbacks which are waiting for completion of director support for Perl in SWIG). He has also wrapped features which weren't previously accessible from Perl. You can view Kosei's work online in his Subversion branch http://trac.xapian.org/browser/branches/gsoc2009-kosei .
Finally, many thanks to Google for sponsoring the summer of code and a special thanks for all the hard work done by the students, mentors and Olly Betts, the co-administrator. - 2009/08/18 - SWIG-1.3.40 released
- SWIG-1.3.40 has been release. A summary of changes is as follows:
- SWIG now supports directors for PHP. - PHP support improved in general. - Octave 3.2 support added. - Various bug fixes/enhancements for Allegrocl, C#, Java, Octave, Perl, Python, Ruby and Tcl. - Other generic fixes and minor new features. - 2009/04/21 - Summer of code 2009 accepted projects
- The students accepted into the Google Summer of Code have now been announced. SWIG has been allocated five student slots by Google and we have chosen the following five projects/students which will be developed over the next four months:
"Add support for Scilab language" - Baozeng Ding "C++0x support for Swig" - Matevz Jekovec "Implement Perl binding for Xapian using SWIG" - Kosei MORIYAMA "Objective C Wrapper Generator over C++ using SWIG" - Ashish Sharma "Director support for PHP" - Miklos Vajna An abstract for each project is available at http://socghop.appspot.com/org/home/google/gsoc2009/swig Congratulations to Baozeng, Matevz, Kosei, Ashish and Miklos, we set some fairly high standards for acceptance this year and you have all done well to meet these standards. We hope that your quality proposals will result in useful enhancements by the end of the summer. For anyone interested in any of these projects, you are welcome to follow the development of them on the swig-devel mailing list - http://www.swig.org/mail.html . Also feel free to drop by our IRC channel to discuss or just say hello - #swig-gsoc on irc.freenode.net. William and Olly SWIG Summer of Code administrators 2009 - 2009/03/21 - SWIG-1.3.39 released
- SWIG-1.3.39 has been release. A summary of changes is shown below.
- Some new small feature enhancements. - Improved C# std::vector wrappers. - Bug fixes: mainly Python, but also Perl, MzScheme, CFFI, Allegrocl and Ruby - 2009/03/19 - SWIG participating in Summer of Code 2009
- We are excited to announce that SWIG has been accepted onto the Google Summer of Code program for the second year running. This is a chance for SWIG to be enhanced in any way that you would like it to.
The Summer of Code program is designed to get new people involved in free/open-source software and get paid for it. Either become a student and code up the changes or if you have an interest in a particular feature being implemented, become a mentor and get paid for looking after a student. The ideas page at http://code.google.com/p/swig-gsoc/wiki/ProjectIdeas contains some suggestions for SWIG, but any reasonable suggestions will be considered. Please chat to us on IRC at #swig-gsoc on irc.freenode.net or email us on the mailing lists. See http://socghop.appspot.com/ for further general information. - 2009/02/01 - SWIG-1.3.38 released
- SWIG-1.3.38 has been released. It contains an output directory regression fix and other minor bug fixes.
- 2009/01/15 - SWIG: 1.3.37 released
- SWIG is a software development tool that reads C/C++ header files and generates wrapper code to make C/C++ code accessible from other languages including Perl, Python, Tcl, Ruby, PHP, Java, Ocaml, Lua, C#, Modula-3, R, Octave and Scheme & Lisp variants.
Apart from the usual round of bug fixes and minor new features there are a couple of big new features in this release. The main changes are:
- Python 3 support added - SWIG now ships with a version of ccache that can be used with SWIG. This enables the files generated by SWIG to be cached so that repeated use of SWIG on unchanged input files speeds up builds quite considerably. - PHP 4 support removed and PHP support improved in general - Improved C# array support - Numerous Allegro CL improvements - 2008/10/08 - SWIG's First Summer of Code
- SWIG is a programmers tool for semi-automating the calls to C or C++ code from almost any other programming language. The idea is to feed C/C++ header files into SWIG and SWIG then generates the 'glue' code so that your C/C++ library can be used from another language such as Python, Java, C#, Ruby, Perl etc. In fact there are implementations for supporting over 20 different of these target languages. The summer of code students have had a productive summer and have extended the number of languages and features supported in SWIG's first Google Summer of Code.
Haoyu Bai has added support for the upcoming Python 3 release. Python is the most popular target language amongst SWIG users and no doubt this addition will be much appreciated by those who are thinking of upgrading to Python 3. Also Haoyu has provided new Python 3 features which make coding faster and simpler when using Python extension code. The main features added are function annotations, buffer interfaces and abstract base classes and are outlined in more detail here: http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2008-bhy/Doc/Manual/Python.html#Python_python3support
Jan Jezabek has added a new 'language' module providing Windows Component Object Model (COM) support. This new module makes it possible for any COM enabled language to easily call into C or C++ libraries. The COM module in SWIG is more powerful than most as it ultimately provides support for more than one language as there are numerous languages that can call into COM libraries. Compiled languages such as Visual Basic and scripting languages, such as JScript, VBA and VBScript that can run on the Windows Scripting Host are probably the most popular to benefit. A great use will be the ease of making C/C++ libraries available in applications supporting the various Basic dialects, such as OpenOffice.org and Microsoft Office. SWIG makes it easy to utilise more advanced C++ code, such as templates, and the COM module is no different here as Jan has added in very comprehensive coverage of the C and C++ languages, full details here: http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2008-jezabek/Doc/Manual/COM.html
Maciej Drwal has added a module for calling C++ code from C code. It is now possible to automatically create a flattened API of C++ classes so that the C++ functionality is available in the form of easy to use C structs and global functions. For example, features such as C++ template classes / functions are easily callable from C. One cool part of this project is the graceful handling of C++ exceptions in the calling C code. Some introductory documentation is available here: http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2008-maciekd/Doc/Manual/C.html
Cheryl Foil has added an interesting feature to improve code documentation in the target language. This works when C/C++ code is documented using the industry standard Doxygen tool for annotating methods, classes, variables etc. The new feature extracts the Doxygen comments from the code for use by one of the many target languages. Cheryl has added initial support for Java so that the Doxygen comments are turned into JavaDoc comments embedded into the generated Java wrappers, see http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2008-cherylfoil/Doc/Manual/Doxygen.html
Lastly, many thanks to the mentors involved in making this happen, Ian Appru, Olly Betts, Richard Boulton and William Fulton and finally to Google for funding a great programme. - 2008/06/24 - SWIG-1.3.36 released
- SWIG-1.3.36 has been released. The major changes are listed below.
- Enhancement to directors to wrap all protected members - Optimisation feature for objects returned by value - A few bugs fixes in the PHP, Java, Ruby, R, C#, Python, Lua and Perl modules - Other minor generic bug fixes - 2008/04/21 - Summer of Code students
- The students accepted into the Google Summer of Code have now been announced. SWIG has managed to get four slots and we have chosen the following four projects/students:
* "SWIG's Python 3.0 Backend" - Haoyu Bai tutored by Richard Boulton * "C target language backend" - Maciej Drwal tutored by William Fulton * "Comment 'Translator' for SWIG" - Cheryl Marie Foil tutored by Olly Betts * "Support for generating COM wrappers" - Jan Jezabek tutored by Ian Appru
The competition was tough and although it was difficult choosing the projects, these four were our strongest, so congratulations and welcome to Haoyu, Jan, Cheryl and Maciej. Further details on the Google SWIG page - http://code.google.com/soc/2008/swig/about.html . - 2008/04/07 - SWIG-1.3.35 released
- SWIG-1.3.35 has been released. This release adds Octave to the list of languages modules that SWIG can generate wrappers for. This release also contains a few bug fixes and regression fixes from the previous release.
- 2008/03/18 - SWIG accepted onto Google Summer of Code
- SWIG is one of 175 open source organizations that have been accepted onto the Google Summer of Code (GSoC) 2008. GSoC is a program to pay students and in the process benefit open source - http://code.google.com/opensource/gsoc/2008/faqs.html . Students interested in submitting an application to work on SWIG are invited to look at the ideas page (http://www.dabeaz.com/cgi-bin/wiki.pl?DeveloperInfo/GoogleSummerOfCode) and then discuss them on the mailing lists before submitting a project proposal.
- 2008/02/27 - SWIG-1.3.34 released
- SWIG-1.3.34 has been released. This release adds shared_ptr support for Python and fixes a number of various other bugs.
- 2007/11/23 - SWIG-1.3.33 released
- SWIG-1.3.33 has been released and fixes a few regressions introduced into version 1.3.32.
- 2007/11/15 - SWIG-1.3.32 released
- SWIG-1.3.32 has been released. This release contains over a hundred bug fixes and improvements to most language modules.
- 2006/12/14 - Revision Control Change
- SWIG has now moved to using Subversion (SVN) for revision control. See the new SVN instructions for details of how to access our SVN repository - http://www.swig.org/svn.html .
- 2006/11/20 - SWIG-1.3.31 released
- SWIG-1.3.31 has been released. This fixes a Python regression in the last version.
- 2006/11/13 - SWIG-1.3.30 released
- SWIG-1.3.30 has been released. This release adds support for R and directors for C# amongst a round of bug fixes.
- 2006/05/16 - CVS access changes
- Sourceforge has changed the way source code can be accessed from cvs. See updated cvs instructions - http://www.swig.org/cvs.html .
- 2006/03/21 - SWIG-1.3.29 released
- SWIG-1.3.29 has been released. This is a bug fix release.
- 2006/02/11 - SWIG-1.3.28 released
- SWIG-1.3.28 has been released. Many new features, improvements and bug fixes are in this release. New language support has also been added for Common Lisp with CFFI.
- 2006/01/12 - SWIG and Wikipedia
- SWIG has made it into the Wikipedia - http://en.wikipedia.org/wiki/SWIG .
- 2005/12/12 - CodeGuru article on SWIG
- CodeGuru features an article on SWIG, Expose Your C/C++ Program's Internal API with a Quick SWIG - http://codeguru.com/csharp/.net/net_asp/scripting/article.php/c11103 .
- 2005/10/29 - New mailing lists
- The swig and swig-dev mailing lists hosted at the University of Chicago are being shut down. Please use the new swig-user and swig-devel lists at SourceForge, details on the mailing list page - http://www.swig.org/mail.html .
- 2005/10/15 - SWIG-1.3.27 released
- SWIG-1.3.27 has been released to fix a major bug in previous release.
- 2005/10/09 - SWIG-1.3.26 released
- SWIG-1.3.26 has been released. Lua, CLISP and Common Lisp with UFFI join the list of supported languages. The PHP4 module has been given a good work over after some bitrot. Various other minor bug fixes and improvements are all also in this release.
- 2005/06/11 - SWIG-1.3.25 released
- SWIG-1.3.25 has been released. This largely contains bug fixes and enhancements to the C# module and the runtime type system.
- 2005/03/25 - Google's use of Python and SWIG
- Greg Stein gives a keynote speech about Google's use of Python and SWIG at the PyCon 2005 conference - http://www.sauria.com/~twl/conferences/pycon2005/20050325/Python%20at%20Google.notes .
- 2004/12/14 - SWIG-1.3.24 released
- SWIG-1.3.24 has been released. This is mainly a bug fix release.
- 2004/11/11 - SWIG-1.3.23 released
- SWIG-1.3.23 has been released. This release contains additional C++ support in the areas of templates and namespaces. Java and C# are added to the list of languages that can create wrappers taking advantage of C++ default arguments. Many other minor bug fixes and enhancements are also included.
- 2004/09/04 - SWIG-1.3.22 released
- SWIG-1.3.22 has been released. This release continues the ongoing improvements and bug fixes in SWIG. The major areas of improvement are in exception handling, enums and the STL. New languages with this release are Allegro CL and Modula-3. The documentation has been revamped and it is now available in the following formats: single html page, multiple html pages and a pdf document.
- 2004/01/11 - SWIG-1.3.21 released
- SWIG-1.3.21 has been released. This is a minor bug fix release.
- 2003/12/17 - SWIG-1.3.20 released
- SWIG-1.3.20 has been released. This release includes a large number of enhancements including improved C++ support, directors, contracts, and more.
- 2003/12/17 - Ruby and SWIG C/C++ Users Journal Article
- An article by Phil Tomson about SWIG and Ruby appears in the January 2004 issue of C/C++ Users Journal - http://www.cuj.com/ .
- 2003/10/27 - Code Generation Network interview on SWIG
- The Code Generation Network undertakes an interview talking about SWIG, see http://www.codegeneration.net/tiki-read_article.php?articleId=33 .
- 2003/03/28 - SWIG-1.3.19 released
- SWIG-1.3.19 has been released. This release fixes a small number of critical bugs in 1.3.18.
- 2003/03/23 - SWIG-1.3.18 released
- SWIG-1.3.18 has been released. This release includes a number of new language modules (C# and Chicken), new features, an improved build environment, and a lot of minor bug fixes.
- 2002/11/27 - SWIG featured in C Magazine
- An article about SWIG appears in C Magazine (Japanese) http://www.cmagazine.jp/contents/200212.html .
- 2002/11/27 - SWIG-1.3.17 Macintosh Port
- Bernard Desgraupes has created a Macintosh version of SWIG-1.3.17. Download: http://webperso.easyconnect.fr/bdesgraupes/Downloads/MacSwig_Carbon_1.3.17.hqx .
- 2002/11/22 - SWIG-1.3.17 released
- SWIG-1.3.17 has been released. This is mostly a bug-fix release for 1.3.16.
- 2002/10/14 - SWIG-1.3.16 released
- SWIG-1.3.16 has been released. This is mostly a bug-fix release for 1.3.15.
- 2002/10/01 - Inline::SWIG for Perl
- Mitchell Charity has created Inline::SWIG for Perl. Check it out at http://www.vendian.org/mncharity/dir3/inline/swig/ .
- 2002/09/10 - SWIG-1.3.15 released
- SWIG-1.3.15 has been released. This is mostly a bug-fix release for 1.3.14 that resolves a number of issues with template and namespace support. Improvements to exception handling and overloading are also included.
- 2002/08/12 - SWIG-1.3.14 released
- SWIG-1.3.14 has been released. SWIG development continues to break new ground--this release features full support for overloaded methods and functions, C++ smart pointers, and more. It also includes new language modules for Ocaml and XML as well as a variety of enhancements to existing modules.
<<
Full News Archives
>>
Feedback and questions concerning this site should be posted to the swig-devel mailing list.
Last modified : Sat Oct 4 16:21:22 2008
|
|