diff options
Diffstat (limited to 'libjava/classpath/doc/www.gnu.org/announce/20050630.wml')
-rw-r--r-- | libjava/classpath/doc/www.gnu.org/announce/20050630.wml | 329 |
1 files changed, 329 insertions, 0 deletions
diff --git a/libjava/classpath/doc/www.gnu.org/announce/20050630.wml b/libjava/classpath/doc/www.gnu.org/announce/20050630.wml new file mode 100644 index 00000000000..1784e2f11f2 --- /dev/null +++ b/libjava/classpath/doc/www.gnu.org/announce/20050630.wml @@ -0,0 +1,329 @@ +#!wml --include=.. + +#use wml::std::page +#use wml::std::lang +#use wml::fmt::isolatin +#use wml::std::case global=upper + +<lang:star:slice:> + +<set-var last-modified-author="prr"> + +#include <include/macros.wml> + +<header title="GNU Classpath 0.16 Announcement (2005-04-29)"> +<pre> +GNU Classpath 0.16 "Harmony!" released. + +We are pleased to announce a new developer snapshot of GNU Classpath. + +GNU Classpath, essential libraries for java, is a project to create free +core class libraries for use with runtimes, compilers and tools for the +java programming language. + +The GNU Classpath developer snapshot releases are not directly aimed +at the end user but are meant to be integrated into larger development +platforms. For example the GCC (gcj) and Kaffe projects will use the +developer snapshots as a base for future versions. + +This is the first release of GNU Classpath since our Harmony +collaboration with the Apache group. Instructions for developers +wanting to try out and help with the core library implementation can +be found at: http://developer.classpath.org/ + +New is our wiki with simple steps to setup a quick development +environment. For example developers using cygwin can find examples +here: http://developer.classpath.org/mediation/ClasspathOnCygwin + +Some highlights of changes in this release (more extensive list below): + +AWT GtkScrollBar and GtkImage improvements. All image operations are +now working correctly. Graphics2D has been upgraded to use Cairo +0.5.x. Free Swing updates for 1.5 top-level compatibility. JTree +interface completed. JFileChooser has been implemented. Completed +implementations of BoxLayout, GrayFilter and SplitPane. Upgraded the +Corba features to 1.3 and included new CORBA 2.3 features. Start of +generic JDWP framework. And lots of bug fixes based on real world +application usage. + +31 people actively contributed code to this release and made 389 CVS +commits during the last two months of development. diffstat since 0.15: +1248 files changed, 133649 insertions(+), 41802 deletions(-) + +More details about the various changes and contributions below. + +GNU Classpath 0.16 can be downloaded from +ftp://ftp.gnu.org/pub/gnu/classpath/ +or one of the ftp.gnu.org mirrors +http://www.gnu.org/order/ftp.html + +File: classpath-0.16.tar.gz +MD5sum: 220a9c86719a2c6bd7ba9b9877495113 +SHA1sum: be6d30fbfe4d71015a455a367411a6d55df3484e + +This release depends on gtk+ 2.4 for AWT support. But gtk+ 2.6 or +higher is recommended. Included, but not activated by default in this +release is a Graphics2D implementation based on the Cairo Graphics +framework (http://www.cairographics.org). Enabling this makes programs +like JEdit start up on GNU Classpath based runtimes. To enable this +support install the cairo 0.5.x snapshot, configure GNU Classpath with +--enable-gtk-cairo and make sure the system property +gnu.java.awt.peer.gtk.Graphics=Graphics2D is set. + +This release was explicitly tested against the last Eclipse 3.1 +release (thanks to various eclipse hackers for the support). For end +user we do however recommend to use the GCJ4 packaged version of +Eclipse 3.1 that have been prepared for the various distributions: + +Fedora Core + http://overholt.ca/wp/?p=27 +Debian GNU/Linux + http://gnu.wildebeest.org/diary-man-di/index.php?p=19 +Ubuntu + http://www.larvalstage.net/index.php?/archives/2-Introducing-Eclipse-3.1.html + +Not yet included is an implementation of Generic collection classes +and classes for other 1.5 language extensions. Work on this is being +done on a special development branch that will be included in a future +GNU Classpath release when free runtimes, compilers and tools have all +been upgraded to support these new language features. + +One of the major focuses of the GNU Classpath project is expanding +and using the Mauve test suite for Compatibility, Completeness and +Correctness checking. Various groups around GNU Classpath collaborate +on the free software Mauve test suite which contains ~30.000 core +library tests. Mauve has various modules for testing core class +library implementations, byte code verifiers, source to byte code and +native code compiler tests. Mauve also contains the Wonka visual test +suite and the Jacks Compiler Killer Suite. This release passes 28801 +of the mauve core library tests. See for more information: +http://www.sourceware.org/mauve/ + +Conformance reports for the included jaxp support can be found in the +doc/README.jaxp file. + +The GNU Classpath developers site http://developer.classpath.org/ +provides detailed information on how to start with helping the GNU +Classpath project and gives an overview of the core class library +packages currently provided. For each snapshot release generated +documentation is provided through the GNU Classpath Tools gjdoc +project. A documentation generation framework for java source files +used by the GNU project. Full documentation on the currently +implementated packages and classes can be found at: +http://developer.classpath.org/doc/ + +Here are answers to some questions you might have about this project and +this release. + +1). Who should use this software? + +Although GNU Classpath is already capable of supporting many +applications written in the java programming language, this is a +development release. As such, there are still some unfinished +components, and some problems are to be expected. You should install it +if you are interested in GNU Classpath development or reporting bugs. +We appreciate both. + +For end users we recommend to use one of the development environments +based on GNU Classpath which combine the core libraries with compilers +and other tools needed for creating applications and libraries. + + * GCC with GCJ (http://gcc.gnu.org/java/) + * Kaffe (http://www.kaffe.org/) + +Both projects have CVS versions which track GNU Classpath closely. + +2). What is required to build/install/run? + +GNU Classpath requires a working GNU build environment and a byte code +compiler such as jikes, gcj or kjc. When creating native code you will +also need a working C compiler and up to date Gnome development +libraries (gtk+, libart and gdk-pixbuf). More information on the +precise version numbers for the tools and libraries can be found in +the INSTALL file. + +You will also need a runtime environment. Most active GNU Classpath +hackers use JamVM (http://jamvm.sourceforge.net/) and the gcj or Jikes +bytecode compiler (http://www.jikes.org) for quick development. But +other environments can certainly be used to hack on the GNU Classpath +core libraries. + +For other environments that might need modified version of the current +release see the README file. A complete list of virtual machines and +compilers known to be based on GNU Classpath can be found at our +website: http://www.gnu.org/software/classpath/stories.html + +Note that these are just byte code execution compilers and/or +runtimes. For development of programs written in the java programming +language you will also need compilers and other tools for creating +libraries and/or executables (see question 1). + +3). What platforms are supported? + +GNU/Linux and FreeBSD on x86 and powerpc are regularly tested by the +developers. Since 0.12 there is also support for cygwin. We plan to +eventually support many others. Many more architectures and platforms +are supported. Check the actual runtime you use together with GNU +Classpath for detailed information on the supported platforms. + +4). Where do I go for more information? + +The project home page with information on our mailing list can be +found at http://www.gnu.org/software/classpath/ + +The GNU Classpath developer recently held a conference during Fosdem. +This was a standing room event and provided lot of communication between +the GNU Classpath, Kaffe, GCJ, IKVM, Apache, java-gnome and Cacao hackers +and users. The presentations of this event have been publised and should +give a good overview of the current status and future plans of the project: +http://www.gnu.org/software/classpath/events/escape_fosdem05.html + +Developers wanting to help out with the project will find more +information and tools on http://developer.classpath.org/ + +5). How do I extend the functionality of the core classes? + +Besides combining GNU Classpath with the runtimes and compilers above +you might want to add support for additional encryption libraries and +algorithms as provided by GNU Crypto +(http://www.gnu.org/software/gnu-crypto/). And for additional +extension libraries (mail, activation, infobus, servlet, etc.) check +out GNU ClasspathX (http://www.gnu.org/software/classpathx). + +Additional network protocol support is provided by a sub-project +called GNU Classpath Inetlib, an extension library to provide extra +network protocol support (ftp, finger, gopher) for GNU Classpath, but +it can also standalone to ease adding http, imap, pop3 and smtp client +support to applictions. Also distributed from +<ftp://ftp.gnu.org/gnu/classpath/> + +The following projects extend the functionality of GNU Classpath +with additional algorithms, new core packages and tools. +All are released under GPL compatible licenses: + +* Jessie: A free implementation of the JSSE. Secure Sockets Extension. + http://www.nongnu.org/jessie/ +* Tritonus: A implementation of the javax.sound API. + http://www.tritonus.org/ +* gcjwebplugin: A plugin for the execution of applets in web browsers. + http://www.nongnu.org/gcjwebplugin/ + +Note that the above libraries might already have been included in the +various platforms that also integrate GNU Classpath like done by the +Kaffe project. + +6). What is new in this release? + +New in release 0.16 (Jun 30, 2005) +(See the ChangeLog file for a full list of changes.) + +* Better GTK scrollbar peer implementation when using GTK >= 2.6. +* GdkGraphics2D has been updated to use Cairo 0.5.x APIs. +* BufferedImage and GtkImage rewrites. All image drawing operations + should now work correctly (flipping requires gtk+ >= 2.6) +* Future Graphics2D, Image and Text work is documented at: + http://developer.classpath.org/mediation/ClasspathGraphicsImagesText +* Free Swing Top-Level Compatibility. JFrame, JDialog, JApplet, + JInternalFrame, and JWindow are now 1.5 compatible in the sense that you + can call add() and setLayout() directly on them, which will have the same + effect as calling getContentPane().add() and getContentPane().setLayout(). +* The JTree interface has been completed. JTrees now recognizes mouse clicks + and selections work, but the visual implementation is not yet complete. + Work on expansion and collapsing of the tree nodes is being implemented. +* BoxLayout works properly now. +* Fixed GrayFilter to actually work. +* Metal SplitPane implemented. +* Lots of free swing text and editor stuff work now. + +* When gtk+ 2.6 or higher is installed the default log handler will produce + stack traces whenever a WARNING, CRITICAL or ERROR message is produced. + +* The CORBA implementation is now a working prototype that should support + features up till 1.3 inclusive. + We would invite groups writing CORBA dependent applications to + try Classpath implementation, reporting any possible bugs. + + The CORBA prototype is interoperable with Sun's implementation v 1.4, + transferring object references, primitive types, narrow and wide + strings, arrays, structures, trees, abstract interfaces and + value types (feature of CORBA 2.3) between these two platforms. + The remote exceptions are transferred and handled correctly. + The stringified object references (IORs) from various sources are + parsed as required. + The transient (for current session) and permanent (till jre restart) + redirections work. + Both Little and Big Endian encoded messages are accepted. + The implementation is verified using tests from the former cost.omg.org. + The current release includes working examples (see the examples directory), + demonstrating the client-server communication, using either CORBA Request + or IDL-based stub (usually generated by a IDL to java compiler). + These examples also show how to use the Classpath CORBA naming service. + The IDL to java compiler is not yet written, but as our library must be + compatible, it naturally accepts the output of other idlj implementations. + +* New --with-vm-classes configure option, and new 'build' setting + for --with-glibj. (Only for integrators.) + +Runtime interface changes: + +* Start of a generic JDWP framework in gnu/classpath/jdwp. + This is unfinished, but feedback (at classpath@gnu.org) from runtime + hackers is greatly appreciated. Although most of the work is currently + being done around gcj/gij we want this framework to be as VM neutral as + possible. Early design is described in: + http://gcc.gnu.org/ml/java/2005-05/msg00260.html +* Native method VMClass.getModifiers() now takes an additional + boolean parameter. +* Deprecated native method VMClassLoader.defineClass(ClassLoader, + String, byte[], int, int) has been replaced by + VMClassLoader.defineClass(ClassLoader, String, byte[], int, int, + ProtectionDomain) +* VMClassLoader.loadClass(String name, boolean resolve) is now native, + replacing the former version which just returned null. +* Deprecated native method VMClassLoader.getPrimitiveClass(String) has + been replaced by new native method VMClassLoader.getPrimitiveClass(char). +* Previously empty implementations of methods VMThread.countStackFrames(), + VMThrowable.fillInStackTrace(), and VMThrowable.getStackTrace() have + been removed; these methods are now native methods. +* Fields "exceptionTypes" and "parameterTypes" have been removed from + Contructor.java and getExceptionTypes() and getParameterTypes() are + now native methods. + +The following people helped with this release: + +Andreas Jaeger (mprec updates) +Andreas Tobler (Darwin support) +Andrew John Hughes (Locale and net fixes, URI RFC2986 updates) +Andrew Overholt (File locking) +Anthony Balkissoon (JList, Free Swing 1.5 updates and mouse event fixes) +Archie Cobbs (VM interface updates) +Audrius Meskauskas (Corba and HTML work) +Bryce McKinlay (RMI work) +Chris Burdess (XML work) +Christian Thalinger (fdlibm updates) +Dalibor Topic (SHA1PRNG and GdkPixbugDecoder updates) +David Daney (BitSet bugfixes) +David Gilbert (Lots and lots of documentation and awt/swing fixes) +Gary Benson (MessageFormat fixes) +Goffredo Baroncelli (HTTPURLConnection fixes) +Jan Roehrich (JTree fixes) +Jeroen Frijters (ClassLoader and nio cleanups) +Ka-Hing Cheung (TreePath and TreeSelection fixes) +Kalle Olavi Niemitalo (Build fixes) +Keith Seitz (JDWP work) +Kim Ho (JFileChooser implementation) +Lillian Angel (JTree implementation and lots of bug fixes) +Mark Wielaard (build fixes, GdkPixpufDecoder fixes and packaging) +Michael Koch (Locale updates, bug and build fixes) +Olga Rodimina (MenuSelectionManager) +Robert Schuster (charset and awt fixes) +Roman Kennke (BoxLayout, GrayFilter and SplitPane, plus bugfixes all over) +Sven de Marothy (GtkImage rewrite, 2D, awt, free swing and date/time fixes) +Thomas Fitzsimmons (Lot of upgrades to the gtk+ AWT and cairo 2D support) +Tom Tromey (libgcj merging, build infrastructure and bug fixes) +Ziga Mahkovec (Graphics2D upgraded to cairo 0.5 and new regex features) + +We would also like to thank the numerous bug reporters and testers! +</pre> + +<footer> |