1 |
14 |
jlechner |
#!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 |
|
|
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
#include
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
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 |
|
|
|
220 |
|
|
|
221 |
|
|
|