Change History
Changes are split into three categories:
- Major changes: The major new features that all users should know about.
- Minor changes: Any smaller changes, including bugfixes.
- API changes: Any changes to the API that could impact existing users.
About XStream version numbers...
Version 0.6 (release candidate 1)
Released April 19, 2004. Focusses on providing full object graph support.
Major changes
- Full support for object graphs, including duplicate references of same object and circular references.
- References can be identified using XPath (default), unique-IDs or disabled.
Minor changes
- Release includes Ant build file.
- Converters for non standard collections such as Collections.EMPTY_LIST, syncronizedList(), unmodifiableMap(), etc.
- Converter for nulls.
- Converter for dynamic proxies.
- Converter for java.net.URL.
- Converters for java.util.LinkedHashMap and java.util.LinkedHashSet.
- Converters for java.lang.reflect.Method and java.lang.reflect.Constructor.
- If duplicate reference support is disabled and a circular reference is encountered, an exception will be thrown.
API changes
- None.
Version 0.5
Released March 8, 2004. Focussed on performance.
Major changes
- Massive performance improvements. Up to 3 times faster for serialization and 22 times faster for deserialization!
- Non-DOM building pull parser based reader. Results in much smaller memory footprint, particularly when deserializing large object models.
Minor changes
- Misc performance improvements.
- Misc bugfixes.
- Alternate encodings can be used with DomDriver.
API changes
- Renamed XMLReader/Writer to HierarchicalStreamReader/Writer as XStream is not actually coupled to serializing just to XML.
- Cleaned up the public API.
- Moved internal XStream implementation classes to core package.
- Misc package/class renames to make more sense. Dumped lots of dead code.
Version 0.4
This version was never publicly released. All changes were made available in 0.5. Focussed on making it easier to create custom converters.
Major changes
- Overhaul of interface for Converters. Makes Converters much cleaner to write.
Minor changes
- Added custom converters for java.io.File, java.util.Properties, java.util.Vector, java.util.Hashtable, java.util.BitSet byte[] (Base64 encoded), char[].
- Misc bugfixes.
API changes
- New interface to be implemented by custom converters.
Version 0.3
Released January 1, 2004.
Major changes
- Added ElementMapper interface and default implementations to allow fine grained control over element name to class mapper operations.
- Added an XPP based reader and writer that uses a pull-parser to create a lightweight DOM tree.
Minor changes
- Added XStream.fromXML(XMLReader xmlReader,Object root) method to allow the population of an object graph starting with a live object root.
- Added XMLReader.peek() method to allow access to the underlying hierarchical object being unmarshalled.
API changes
- Aligned the the methods in XStream to use the specified ObjectFactory in the constructor instead of creating a SunReflectionObjectFactory.
Older versions
Changes in XStream prior to version 0.3 were not logged.