OSDN Git Service

PR target/27599
[pf3gnuchains/gcc-fork.git] / libjava / classpath / doc / www.gnu.org / announce / 20050906.wml
1 #!wml --include=..
2
3 #use wml::std::page
4 #use wml::std::lang
5 #use wml::fmt::isolatin
6 #use wml::std::case global=upper
7
8 <lang:star:slice:>
9
10 <set-var last-modified-author="mjw">
11
12 #include <include/macros.wml>
13
14 <header title="GNU Classpath 0.18 Announcement (2005-09-06)"> 
15 <pre>
16 GNU Classpath 0.18 released.
17
18 We are pleased to announce a new developer snapshot of GNU Classpath.
19
20 GNU Classpath, essential libraries for java, is a project to create free
21 core class libraries for use with runtimes, compilers and tools for the
22 java programming language.
23
24 The GNU Classpath developer snapshot releases are not directly aimed
25 at the end user but are meant to be integrated into larger development
26 platforms. For example the GCC (gcj) and Kaffe projects will use the
27 developer snapshots as a base for future versions.
28
29 This is our first release after "The Big Merge" with GCC/GCJ.  GNU
30 Classpath can now be used as a subdirectory of libgcj inside the GCC
31 tree so it will be much easier to keep GCC up-to-date with the latest
32 GNU Classpath developer release snapshots.
33
34 Some highlights of changes in this release (more extensive list below):
35
36   Added GNU JAWT for awt native interface support. Datatransfer
37   clipboard updated to 1.5 including support for copy/paste of
38   serialized objects, images and files.  Completed the org.omg
39   PortableInterceptor, DynamicAny and Portable Object Adapter
40   packages. Multi plaf support for Free Swing. Editing support for
41   JTree and JTable. Lots of icons and look and feel improvements for
42   Free Swing basic and metal themes. NIO FileChannel.map implemented
43   and DirectByteBuffer put method speedups. Image loading speedups for
44   awt. Support for darwin and solaris out of the box.
45
46 29 people actively contributed to this release and made 535 CVS
47 commits during the two months of development. diffstat since 0.17:
48  994 files changed, 114744 insertions(+), 13663 deletions(-)
49
50 More details about the various changes and contributions below.
51
52 A full list of bug reports fixed for this release can be found at:
53 http://gcc.gnu.org/bugzilla/buglist.cgi?product=classpath&target_milestone=0.18
54
55 This release depends on gtk+ 2.4 for AWT support. But gtk+ 2.6 or
56 higher is recommended. Included, but not activated by default in this
57 release is a Graphics2D implementation based on the Cairo Graphics
58 framework (http://www.cairographics.org). Enabling this makes programs
59 like JFreeChart and JEdit start up on GNU Classpath based runtimes.
60 To enable this support install the cairo 0.5.x snapshot, configure GNU
61 Classpath with --enable-gtk-cairo.
62
63 One of the major focuses of the GNU Classpath project is expanding
64 and using the Mauve test suite for Compatibility, Completeness and
65 Correctness checking.  Various groups around GNU Classpath collaborate
66 on the free software Mauve test suite which contains 32.000+ core
67 library tests.  Mauve has various modules for testing core class
68 library implementations, byte code verifiers, source to byte code and
69 native code compiler tests.  Mauve also contains the Wonka visual test
70 suite and the Jacks Compiler Killer Suite.
71 See for more information: http://www.sourceware.org/mauve/
72 This release passes 31194 out of 32253 Mauve core library tests.
73
74 Conformance reports for the included jaxp support can be found in the
75 doc/README.jaxp file.
76
77 GNU Classpath 0.18 can be downloaded from
78 ftp://ftp.gnu.org/pub/gnu/classpath/
79 or one of the ftp.gnu.org mirrors
80 http://www.gnu.org/order/ftp.html
81
82 File: classpath-0.18.tar.gz
83 MD5sum: c0650c257aa93eafb709553f172f0bbb
84 SHA1sum: 28061c750244cac4ff0151da6aba183b94b98b25
85
86 The GNU Classpath developers site http://developer.classpath.org/
87 provides detailed information on how to start with helping the GNU
88 Classpath project and gives an overview of the core class library
89 packages currently provided.  For each snapshot release generated
90 documentation is provided through the GNU Classpath Tools gjdoc
91 project.  A documentation generation framework for java source
92 files used by the GNU project. Full documentation on the currently
93 implementated packages and classes can be found at:
94 http://developer.classpath.org/doc/
95
96 New in release 0.18 (Sep 6, 2005)
97 (See the ChangeLog file for a full list of changes.)
98
99 * GNU JAWT implementation, the AWT Native Interface, which allows
100   direct access to native screen resources from within a Canvas's
101   paint method.  GNU Classpath Examples comes with a Demo, see
102   examples/README.
103 * awt.datatransfer updated to 1.5 with supports for FlavorEvents.
104   The gtk+ awt peers now allow copy/paste of text, images, uris/files
105   and serialized objects with other applications and tracking
106   clipboard change events with gtk+ 2.6 (for gtk+ 2.4 only text and
107   serialized objects are supported). A GNU Classpath Examples
108   datatransfer Demo was added to show the new functionality.
109 * org.omg.PortableInterceptor and related functionality in other
110   packages is now implemented:
111     - The sever and client interceptors work as required since 1.4.
112     - The IOR interceptor works as needed for 1.5.
113 * The org.omg.DynamicAny package is completed and passes the prepared
114   tests.
115 * The Portable Object Adapter should now support the output of the
116   recent IDL to java compilers. These compilers now generate servants and 
117   not CORBA objects as before, making the output depended on the existing 
118   POA implementation. Completing POA means that such code can already be 
119   tried to run on Classpath. Our POA is tested for the following usager
120   scenarios:
121     - POA converts servant to the CORBA object.
122     - Servant provides to the CORBA object.
123     - POA activates new CORBA object with the given Object Id
124       (byte array) that is later accessible for the servant.
125     - During the first call, the ServantActivator provides servant for
126       this and all subsequent calls on the current object.
127     - During each call, the ServantLocator provides servant for this call
128       only.
129     - ServantLocator or ServantActivator forwards call to another server.
130     - POA has a single servant, responsible for all objects.
131     - POA has a default servant, but some objects are explicitly
132       connected to they specific servants.
133   The POA is verified using tests from the former cost.omg.org.      
134 * The javax.swing.plaf.multi.* package is now implemented.
135 * Editing and several key actions for JTree and JTable were implemented.
136 * Lots of icons and look and feel improvements for Free Swing basic
137   and metal themes were added.  Try running the GNU Classpath Swing
138   Demo in examples (gnu.classpath.examples.swing.Demo) with:
139   -Dswing.defaultlaf=javax.swing.plaf.basic.BasicLookAndFeel
140   -Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel
141 * Start of styled text capabilites for java.swing.text.
142 * NIO FileChannel.map implementation, fast bulk put implementation for
143   DirectByteBuffer (speeds up this method 10x).
144 * Split gtk+ awt peers event handling in two threads and improve gdk
145   lock handling (solves several AWT lock ups).
146 * Speed up awt Image loading.
147 * Updated TimeZone data against Olson tzdata2005l.
148 * Make zip and jar UTF-8 "clean".
149 * "native" code builds and compiles (warning free) on Darwin and
150   Solaris.
151
152 Runtime interface changes:
153
154 * All native resource "pointers" in the VM interface classes are now
155   exposed as gnu.classpath.Pointer objects. This might impact runtimes
156   that optimize and support java.nio.DirectByteBuffers. Creating these
157   classes and accessing the contents as void * pointers for the native
158   reference JNI implementation is done through the
159   JCL_NewRawDataObject and JCL_GetRawData functions.
160 * Simplified the Class/VMClass interface.
161 * Removed loadedClasses map from ClassLoader. It's now the VMs
162   responsibility to manage the list of defined and loaded classes for
163   each class loader.
164 * Moved native methods from java.lang.reflect.Proxy to VMProxy.
165 * Added hook to VMClassLoader to allow VM to do class caching.
166
167 New Untested/Disabled Features:
168
169   The following new features are included, but not ready for
170   production yet. They are explicitly disabled and not supported. But
171   if you want to help with the development of these new features we
172   are interested in feedback. You will have to explicitly enable them
173   to try them out (and they will most likely contain bugs). If you are
174   interested in any of these then please join the mailing-list and
175   follow development in CVS.
176
177 * QT4 AWT peers, enable by giving configure --enable-qt-peer.
178 * JDWP framework, enable by deleting the jdwp references from
179   lib/standard.omit and vm/reference/standard.omit. No default
180   implementation is provided. Work is being done on gcj/gij
181   integration.
182 * StAX java.xml.stream, enable by deleting the gnu.xml.stream and
183   java.xml.stream references in lib/standard.omit.
184
185 The following people helped with this release:
186
187 Aaron Luchko (Lots of JDWP work)
188 Andreas Tobler (Darwin and Solaris testing and fixing
189 Andrew Haley (gcj build speedups)
190 Anthony Balkissoon (Lots of Free Swing work including JTable editing)
191 Archie Cobbs (Build fixes)
192 Audrius Meskauskas (Lots of omg corba work plus testing and documenting)
193 Bastiaan Huisman (TimeZone bug fixing)
194 Casey Marshall (NIO FileChannel.map support, security and policy updates)
195 Chris Burdess (StAX work and gnu xml fixes)
196 Christian Schlichtherle (Zip fixes and cleanups)
197 Christian Thalinger (64-bit cleanups)
198 Dalibor Topic (Qt4 build infrastructure)
199 David Gilbert (Basic and Metal icon and plaf and lots of documenting)
200 Guilhem Lavaux (JCL native Pointer updates)
201 Ingo Proetel (Image, Logger and URLClassLoader updates)
202 Ito Kazumitsu (NetworkInterfaces implementation and updates)
203 Jan Roehrich (BasicTreeUI updates)
204 Jeroen Frijters (VMProxy and VMClassLoader updates, RMIClassLoader fixes)
205 Keith Seitz (Lots of JDWP work)
206 Kelley Cook (Build fixes)
207 Lillian Angel (Lots of Free Swing work including JTree editing)
208 Mark Wielaard (Clipboard implementation, build and release infrastructure)
209 Rainer Orth (Build fixes)
210 Robert Schuster (Documentation updates and beans fixes)
211 Roman Kennke (Lots of Free Swing work including styled text)
212 Sven de Marothy (Qt4 peers)
213 Thomas Fitzsimmons (Lots of gtk+ awt peer work)
214 Tom Tromey (Lots of fixes including coordinating The Big Merge)
215 Wolfgang Baer (GapContent bug fixes)
216
217 We would also like to thank the numerous bug reporters and testers!
218
219 </pre>
220
221 <footer>