[image of the evil water droplet] (jpeg 3k)

GNU Classpath

GNU Classpath 0.98 "Better Late Than Never"
We are proud to announce the release of GNU Classpath 0.98.

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 JamVM, CACAO and Kaffe can make use of an installed copy of GNU Classpath 0.98, while GCC (gcj) will use the developer snapshots as a base for future versions. For more projects based on GNU Classpath, http://www.gnu.org/software/classpath/stories.html

This release brings with it a number of interesting new features:

There have also been many bugfixes over the past year. Those relevant to 0.98 can be found at http://gcc.gnu.org/bugzilla/buglist.cgi?product=classpath&target_milestone=0.98

With the 0.95 release, we switched fully towards the 1.5 generics work that we previously released separately as classpath-generics. All this work is now fully integrated in the main release and various runtimes (gcj, cacao, jamvm, ikvm, etc) have been extended to take advantage of the new generics, annotations and enumeration support in the core library. As a consequence, only 1.5 capable compilers (currently the Eclipse Compiler for Java (ecj) and Sun's javac) may be used to build Classpath.

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,which will become part of GNU Classpath itself with the release of 0.98. 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/ We are looking into how to extend the documentation experience in the future. Please contact the mailinglist if you would like to help with this effort.

For more information about the project see also:

GNU Classpath 0.98 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 or the Classpath continuous integration system http://builder.classpath.org/dist

File: classpath-0.98.tar.gz
MD5sum: 90c6571b8b0309e372faa0f9f6255ea9
SHA1sum: 1d6e8d1b3542a35bbd1013c61fab3cfae083decb

New in release 0.98 (Feb 05, 2009)

  • Native support for BigInteger is now provided using the GMP library. A new option, --enable/disable-gmp is provided, and the option is enabled by default if GMP is found.
  • Classpath now makes use of a new StringBuilder implementation internally called CPStringBuilder. In addition to being unsynchronised, like StringBuilder, this also avoids copying the array when toString or substring is called. While StringBuffer/Builder always retain their own array, which is only altered during resizing, CPStringBuilder gives away its array when the result is generated by toString()/substring() and starts afresh. The default capacity of CPStringBuilder can also be configured using the gnu.classpath.cpstringbuilder.capacity property. (PR21869)
  • gjdoc is now built as part of tools.zip
  • Import of the Java Activation Framework from ClasspathX to provide javax.activation (part of 1.6)
  • Preliminary version of java.util.Scanner (PR30436)
  • Reduce cost of ThreadLocal(s) to improve Jython performance (PR33690)
  • Updated to use CLDR 1.5.1 (PR35237)
  • Many bug fixes including:
    • PR22851: zoneStrings in gnu/java/locale/LocaleInformation*
    • PR31895: setCurrency(Currency) does not actually change the currency.
    • PR32028: Make fails at gjdoc
    • PR34840: Mismatch between Sun and Classpath's java.lang.Appendable
    • PR35487: gcj causes ConcurrentModificationException during tomcat5
    • PR35690: javax.tools.FileObject.toUri is in wrong case
    • PR36085: java.util.regex escape-sequence handling
    • PR36147: Apache Tomcat fails to read descriptors using GNU XML
    • PR36219: gnu.xml.transform.SortKey isn't subclass
    • PR36220: NPEs in gnu.xml.transform.* clone methods
    • PR36221: DomDOMException running SPEC jvm 2008 xml.transform
    • PR36477: OOME in CPStringBuilder when running Eclipse
    • PR36522: Policy file is not read at all
    • PR36636: gjar -u doesn't work
    • PR36637: --without-fastjar doesn't wor
    • PR36677: Omission bug in JDWP VirtualMachineCommandSet
    • PR38417: gnu.java.security.util.PRNG produces easily predictable values
    • PR38473: Segmentation fault in retrieving font outline decomposition
    • PR38861: Support XULRunner 1.9.1.
    • PR38912: XMLParser not interning element names

Runtime interface changes:

  • VMSecureRandom has moved to gnu.java.security.jce.prng.VMSecureRandom as part of the fix for PR38417.
  • gnu.java.lang.VMCPStringBuilder has been added and should be added to avoid the inefficency of reflection when creating non-copied String objects.

The following people helped with this release:

Chris Burdess, David Daney, David Edelsohn, Daniel Frampton, Michael Franz, Jeroen Frijters, David P Grove, Andrew Haley, Laszlo Andras Hernadi, Andrew John Hughes, Matthias Klose, Byeogncheol Lee, Robert Lougher, Raif S. Naffah, Xavier Poinsard, Ian Rogers, Robert Schuster, Archit Shah, Joshua Sumali, Christian Thalinger, Mario Torre, Tom Tromey, Ralf Wildenhues, Mark Wielaard

We would also like to thank the numerous bug reporters and testers! In addition, we'd like to extend our thanks to all those who've contributed over the years and have helped in building a thriving and friendly community around the GNU Classpath project.

Return to GNU's home page.

Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to contact the FSF.

Please send comments on these web pages to webmasters@www.gnu.org, send other questions to gnu@gnu.org.

Copyright © 1999-2006 Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Updated: $Date: 2009/07/30 22:51:20 $ $Author: gnu_andrew $