From: Nicola Pero <[EMAIL PROTECTED]> This is the announcement of JIGS 1.0.0. It is the first release (shyly) marked as `stable'. JIGS is not totally complete, but it is quickly approaching completion. What is JIGS ? ============== JIGS stands for Java Interface for GnuStep. It is a package allowing integration between Java and Objective-C. The main purpose of JIGS is to allow Java programmers to use the GNUstep libraries from Java. JIGS is more than a set of bindings for GNUstep from Java; JIGS takes advantage of the fact that Objective-C and Java are very similar languages to make it possible to use Objective-C classes from Java using exactly the same API (and vice versa). You have to learn the GNUstep API only once, and then you can use it both from Objective-C and from Java in the same way! Moreover, JIGS can generate automatically wrappers for your own Objective-C GNUstep libraries. JIGS allows you to write optimized classes and components in Objective-C, and make them available to Java developers. In the typical configuration, fast Objective-C components and libraries are used in the backend, and JIGS is used to integrate them smoothly in a Java front-end. Moving from one language to the other is as easy as it can possibly be with two different languages. JIGS is free software and part of the GNU project, freely available from the Free Software Foundation under the GNU LGPL license. Release Notes for JIGS version 1.0 ================================== This release provides documentation. A first version of the JIGS manual, covering programming in GNUstep from Java and wrapping Objective-C libraries, is included. Release Notes for JIGS version 0.9 ================================== This release implements support for threads. Calling (thread-safe) GNUstep libraries concurrently from different java threads should now work. Release Notes for JIGS version 0.8 ================================== This release is mainly a bug fix release. In particular, exposing different objc methods as overloaded java methods has been finally fixed. You can now create windows using the gui library from Java! Release Notes for JIGS version 0.7 ================================== This release adds support for morphing of selectors. This improvement required extensive additions to the JIGS core engine and to the WrapCreator tool. Release Notes for JIGS version 0.6 ================================== This release supports building wrappers of debugging libraries, and keeping and running them on the same system as wrappers of not-debugging libraries. Release Notes for JIGS version 0.5 ================================== This release includes a first very partial and experimental wrapper of the gnustep gui library; WrapCreator supports prerequisite libraries; bug fixes. Release Notes for JIGS version 0.4 ================================== This release includes a first partial wrapper of the gnustep base library; the WrapCreator tool has been modified to parse the header file only once, so it is now much faster. Many bug fixes too. Release Notes for JIGS version 0.3 ================================== First release of WrapCreator, an automatic wrapper tool for JIGS. The wrapper can automatically generate the code to wrap an objective-C library to Java. Release Notes for JIGS version 0.2 ================================== Alpha support for subclassing an Objective-C class in Java. Better support for exposing Objective-C class methods to Java. Release Notes for JIGS version 0.1 ================================== This is the first public release. While the core engine is mostly working, the high level APIs and tools are still missing. In particular, we don't have a wrapper tool yet. And, the base gnustep library has not yet been wrapped. The core engine is organized in the following way: * A little library (ObjcRuntimeUtilities) to programmatically add classes and methods to the objective-C runtime while it is running; * A little library (GSJNI) of utilities to program JNI using GNUstep. * A little class (NSJavaVirtualMachine) keeping track of the java virtual machine presently running and incidentally providing a simple API to start a java virtual machine. * The real core engine (JIGS itself), built on top of the previous layers. Most of it is written in Objective-C, but part is in Java. Version 0.1 contains an example of an objective-C gnustep library wrapped by hand and exposed as a Java library. Following this example, it should not be too difficult to wrap by hand simple libraries. Tests and examples of the reverse (starting a java virtual machine in an Objective-C executable and accessing java objects from objective-C) have been written, but not included in JIGS 0.1. Authors ======= JIGS was brought to you by Nicola Pero <[EMAIL PROTECTED]> Brainstorm Computer Solutions (http://www.brainstorm.co.uk) funded the development of JIGS. Maintainers =========== JIGS is currently maintained by Nicola Pero <[EMAIL PROTECTED]>. Software Needed to Use JIGS =========================== To use the JIGS, you need: * A version of the Objective-C runtime library compiled as a shared library (and working with GNUstep). Please refer to the INSTALL file for more information on how to compile and install it. This is needed only to load objective-C libraries into a running java virtual machine, while you don't need it to start a java virtual machine inside an already running objective-C app or tool. Please note that there are no examples yet of doing the latter in JIGS though, so if you want to play comfortably, getting a shared Objective-C runtime library is recommended. * GNUstep make package and base library. * A java development environment supporting JNI 1.2. Special Thanks ============== To Richard Frith-Macdonald <[EMAIL PROTECTED]> for countless discussions and help during development of JIGS 0.1. Obtaining JIGS ============== JIGS is available at http://www.gnustep.it/jigs/Download/ New releases and snapshots can usually be found on the JIGS homepage, http://www.gnustep.it/jigs/. You may always get the latest version of JIGS from the GNUstep CVS - the module is called 'java'. Bug Reports =========== The best way to submit bug reports and fixes is to email them to <[EMAIL PROTECTED]>. _______________________________________________ Bug-gnustep mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gnustep
