OSDN Git Service

Document LTO behavior with incompatible declarations.
[pf3gnuchains/gcc-fork.git] / libjava / NEWS
index 24fd456..f028b6f 100644 (file)
@@ -1,3 +1,294 @@
+*** Changes in GCC 4.1:
+
+Core library (libgcj) updates based on GNU Classpath 0.15 - 0.19+
+
+- Networking
+
+* The java.net.HttpURLConnection implementation no longer buffers the
+  entire response body in memory.  This means that response bodies
+  larger than available memory can now be handled.
+
+- (N)IO
+
+* NIO FileChannel.map implementation, fast bulk put implementation for
+  DirectByteBuffer (speeds up this method 10x).
+
+* FileChannel.lock() and FileChannel.force() implemented.
+
+- XML
+
+* gnu.xml fix for nodes created outside a namespace context.
+
+* Add support for output indenting and cdata-section-elements output
+  instruction in xml.transform.
+
+* xml.xpath corrections for cases where elements/attributes might have
+  been created in non-namespace-aware mode. Corrections to handling of
+  XSL variables and minor conformance updates.
+
+- AWT
+
+* Qt4 configury switches for OS-X. Additional to the --enable-qt-peer, OS-X
+  users with a Qt4 installation can build the qt-peers with the argument
+  --with-qt4dir=<Qt4-installation-dir>.
+
+* GNU JAWT implementation, the AWT Native Interface, which allows direct
+  access to native screen resources from within a Canvas's paint method.
+  GNU Classpath Examples comes with a Demo,
+  see libjava/classpath/examples/README.
+
+* awt.datatransfer updated to 1.5 with supports for FlavorEvents.
+  The gtk+ awt peers now allow copy/paste of text, images, uris/files
+  and serialized objects with other applications and tracking
+  clipboard change events with gtk+ 2.6 (for gtk+ 2.4 only text and
+  serialized objects are supported). A GNU Classpath Examples
+  datatransfer Demo was added to show the new functionality.
+
+* Split gtk+ awt peers event handling in two threads and improve gdk lock
+  handling (solves several AWT lock ups).
+
+* Speed up awt Image loading.
+
+* Better GTK scrollbar peer implementation when using GTK >= 2.6.
+
+* Handle image loading errors correctly for gdkpixbuf and MediaTracker.
+
+* Better handle GDK lock. Properly prefix gtkpeer native functions (cp_gtk).
+
+* 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
+
+* 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.
+
+- Free Swing
+
+* The Swing RepaintManager has been reworked for more efficient painting,
+  especially for large GUIs.
+
+* The Swing layout manager OverlayLayout has been implemented, the BoxLayout
+  has been rewritten to make use of the SizeRequirements utility class and
+  caching for more efficient layout.
+
+* Improved accessibility support for Swing.
+
+* Significant progress has been made in the implementation of the
+  javax.swing.plaf.metal.* package, with most UI delegates in a working state
+  now.  Please test this with your own applications and provide feedback that
+  will help us to improve this package.
+
+* The GUI demo (gnu.classpath.examples.swing.Demo) has been extended to
+  highlight various features in our free-swing implementation. And includes
+  a look and feel switcher (Metal default, Ocean or GNU).
+
+* The javax.swing.plaf.multi.* package is now implemented.
+
+* Editing and several key actions for JTree and JTable were implemented.
+
+* Lots of icons and look and feel improvements for Free Swing basic and
+  metal themes were added.  Try running the GNU Classpath Swing Demo in
+  examples (gnu.classpath.examples.swing.Demo) with:
+  -Dswing.defaultlaf=javax.swing.plaf.basic.BasicLookAndFeel
+  -Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel
+
+* Start of styled text capabilites for java.swing.text.
+
+* DefaultMutableTreeNode preorder, postorder, depthFirst and breadthFirst
+  traversal enumerations implemented.
+
+* JInternalFrame colors and titlebar draw properly.
+
+* JTree is working up to par (icons, selection and keyboard traversal).
+
+* JMenus were made more compatible in visual and programmatic behavior.
+
+* JTable changeSelection and multiple selections implemented.
+
+* JButton and JToggleButton change states work properly now.
+
+* JFileChooser fixes.
+
+* revalidate and repaint fixes which make Free Swing much more responsive.
+
+* MetalIconFactory implemented.
+
+* 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.
+
+- Free RMI and Corba
+
+* The Andrew Watson, Vice President and Technical Director of the Object
+  Management Group, has officially assigned us 20 bit Vendor Minor Code Id:
+  0x47430 ("GC") that will mark remote Classpath - specific system exceptions.
+  Obtaining the VMCID means that GNU Classpath now is a recogniseable type of
+  node in a highly interoperable CORBA world.
+
+* Classpath now includes the first working draft to support the RMI over
+  IIOP protocol. The current implementation is capable for remote invocations,
+  transferring various Serializables and Externalizables via RMI-IIOP protocol.
+  It can flatten graphs and, at least for the simple cases, is interoperable
+  with Sun's jdk 1.5.
+
+* org.omg.PortableInterceptor and related functionality in other packages
+  is now implemented:
+    - The sever and client interceptors work as required since 1.4.
+    - The IOR interceptor works as needed for 1.5.
+
+* The org.omg.DynamicAny package is completed and passes the prepared tests.
+
+* The Portable Object Adapter should now support the output of the
+  recent IDL to java compilers. These compilers now generate servants and
+  not CORBA objects as before, making the output depended on the existing
+  POA implementation. Completing POA means that such code can already be
+  tried to run on Classpath. Our POA is tested for the following usager
+  scenarios:
+    - POA converts servant to the CORBA object.
+    - Servant provides to the CORBA object.
+    - POA activates new CORBA object with the given Object Id (byte array)
+      that is later accessible for the servant.
+    - During the first call, the ServantActivator provides servant for this
+      and all subsequent calls on the current object.
+    - During each call, the ServantLocator provides servant for this call
+      only.
+    - ServantLocator or ServantActivator forwards call to another server.
+    - POA has a single servant, responsible for all objects.
+    - POA has a default servant, but some objects are explicitly connected
+      to they specific servants.
+  The POA is verified using tests from the former cost.omg.org.
+
+* 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.
+
+- Misc
+
+* Updated TimeZone data against Olson tzdata2005l.
+
+* Make zip and jar UTF-8 "clean".
+
+* "native" code builds and compiles (warning free) on Darwin and Solaris.
+
+* java.util.logging.FileHandler now rotates files.
+
+* 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
+
+* QT4 AWT peers, enable by giving configure --enable-qt-peer.
+  Included, but not ready for production yet. They are explicitly
+  disabled and not supported. But if you want to help with the
+  development of these new features we are interested in feedback. You
+  will have to explicitly enable them to try them out
+  (and they will most likely contain bugs).
+
+* Documentation fixes all over the place.
+  See http://developer.classpath.org/doc/
+
+Thanks! The following people helped with the above new features, bug
+reports, testing and integration:
+
+Aaron Luchko (JDWP updates and documentation fixes) Andreas Jaeger
+(mprec updates) Andreas Tobler (Darwin and Solaris testing and fixing,
+Qt4 support for Darwin/OSX, Graphics2D support, gtk+ updates.)  Andrew
+Haley (Serialization and URLClassLoader fixes, gcj build speedups)
+Andrew John Hughes (Locale and net fixes, URI RFC2986 updates,
+Serialization fixes, Properties XML support and generic branch work,
+VMIntegration guide update) Andrew Overholt (File locking) Anthony
+Balkissoon (JList, Free Swing 1.5 updates and mouse event fixes, Lots
+of Free Swing work including JTable editing) Anthony Green (MIDI
+framework, ALSA and DSSI providers) Archie Cobbs (Build fixes, VM
+interface updates, URLClassLoader updates) Audrius Meskauskas (Lots of
+Free Corba, RMI and HTML work plus testing and documenting) Bastiaan
+Huisman (TimeZone bug fixing) Bryce McKinlay (RMI work) Casey Marshall
+(Crypto algorithm fixes, FileChannel lock, SystemLogger and
+FileHandler rotate impl, NIO FileChannel.map support, security and
+policy updates) Chris Burdess (Lots of gnu.xml and http protocol
+fixes, StAX and dom xml:id support) Christian Schlichtherle (Zip fixes
+and cleanups) Christian Thalinger (64-bit cleanups, Configuration and
+VM interface fixes and CACAO integration, fdlibm updates) Dalibor
+Topic (Better DEBUG support, Build cleanups and Kaffe integration. Qt4
+build infrastructure, SHA1PRNG and GdkPixbugDecoder updates) Daniel
+Bonniot (Serialization fixes) David Daney (BitSet bugfixes,
+HttpURLConnection rewrite and improvements) David Gilbert (Basic and
+Metal icon and plaf and lots of documenting, Lots of Free Swing and
+metal theme additions. MetalIconFactory implementation) David
+Lichteblau (JCL support library global/local reference cleanups) Gael
+Thomas (VMClassLoader boot packages support sugestions) Gary Benson
+(MessageFormat fixes) Goffredo Baroncelli (HTTPURLConnection fixes)
+Guilhem Lavaux (Configuration, thread and channel fixes and Kaffe
+integration. JCL native Pointer updates. Logger bug fixes) Ingo
+Proetel (Image, Logger and URLClassLoader updates) Ito Kazumitsu
+(NetworkInterfaces implementation and updates) Jan Roehrich
+(BasicTreeUI and JTree fixes) Jeroen Frijters (ClassLoader and nio
+cleanups, Serialization fixes, better Proxy support, bug fixes and
+IKVM integration) Julian Scheid (Documentation updates and gjdoc
+support) Ka-Hing Cheung (TreePath and TreeSelection fixes) Kalle Olavi
+Niemitalo (Build fixes) Keith Seitz (Lots of JDWP work) Kelley Cook
+(Build fixes) Kim Ho (JFileChooser implementation) Lillian Angel
+(JTree implementation and lots Free Swing additions and bug fixes)
+Mark Wielaard (Bug fixes, packaging and release management, Clipboard
+implementation, System call interrupts and network timeouts and
+GdkPixpufDecoder fixes) Martin Cordova (Suggestions for better
+SocketTimeoutException) Michael Koch (Configuration fixes. Locale
+updates, bug and build fixes) Nicolas Geoffray (VMClassLoader and
+AccessController improvements) Olga Rodimina (MenuSelectionManager)
+Paul Jenner (Better -Werror support) Rainer Orth (Build fixes) Robert
+Schuster (Documentation updates and beans fixes, TreeNode enumerations
+and ActionCommand and various fixes, XML and URL, AWT and Free Swing
+bug fixes) Roman Kennke (BoxLayout, GrayFilter and SplitPane, plus
+bugfixes all over. Lots of Free Swing work including styled text)
+Santiago Gala (AccessControlContext fixes) Simon Kitching (String
+cleanups and optimization suggestions) Stuart Ballard (RMI constant
+fixes) Sven de Marothy (BMP imageio support, CSS and TextLayout
+fixes. GtkImage rewrite, 2D, awt, free swing and date/time fixes, Qt4
+peers) Thomas Fitzsimmons (Lot of upgrades to the gtk+ AWT and cairo
+2D support. Lots of imageio framework additions, lots of AWT and Free
+Swing bug fixes) Tom Tromey (Eclipse integration, generics work, lots
+of bug fixes and gcj integration including coordinating The Big Merge)
+Wolfgang Baer (GapContent bug fixes) Ziga Mahkovec (Graphics2D
+upgraded to cairo 0.5 and new regex features)
+
 *** Changes in GCC 4.0:
 
 * Character encoders and decoders have been added for: iso-8859-6