Change History

Changes are split into three categories:

Full details can be found in GitHub's Issues, filter for the appropriate milestone.

1.4.10

Released May 23, 2017.

This maintenance release addresses also the security vulnerability CVE-2017-7957, used for a Denial of Service attack by crashing the Java runtime.

Major changes

Stream Compatibility

Minor changes

API changes

1.4.9

Released March 15, 2016.

This maintenance release addresses also the security vulnerability CVE-2016-3674, known as XXE vulnerability that can be used to expose arbitrary data from the file system when unmarshalling.

Major changes

Minor changes

API changes

1.4.8

Released February 18, 2015.

Major changes

Minor changes

API changes

1.4.7

Released February 8, 2014.

This maintenance release addresses mainly the security vulnerability CVE-2013-7285, an arbitrary execution of commands when unmarshalling.

Major changes

Minor changes

API changes

1.4.6

Released December 12, 2013.

Major changes

Minor changes

API changes

1.4.5

Released September 18, 2013.

Major changes

Minor changes

API changes

1.4.4

Released January 19, 2013.

Minor changes

API changes

1.4.3

Released July 17, 2012.

Major changes

Minor changes

1.4.2

Released November 3, 2011.

Major changes

Minor changes

API changes

1.4.1

Released August 11, 2011.

Major changes

Minor changes

1.4

Released August 6, 2011.

Major changes

Minor changes

API changes

1.3.1

Released December 6, 2008.

CGLIB support must be explicitly activated now. The decision has been made due to possible problems using an own classloader and because of ongoing complaints about occurring exceptions in the CGLIBEnhancedConverter at XStream initialization although they are caused by incompatible ASM versions on the user's classpath (XSTR-469, XSTR-513 and XSTR-518).

XStream uses some attributes on its own. Until now it was possible to use XStream.aliasAttribute to define a different name. This does still work but is deprecated for system attributes. Use the new call XStream.aliasSystemAttribute for such an alias.

Major changes

Minor changes

API changes

1.3

Released February 27, 2008.

Major changes

Minor changes

API changes

Note, to support a representation of null values in some way, it is absolutely necessary that each converter can handle a null value in its marshalling methods. If you have implemented your own custom converters, try to handle such a case also to prevent incompatibilities in case XStream will provide such values with its next major version.

Version 1.2.2

Released May 24, 2007.

Note, that next version of XStream will behave slightly different by default. XStream emits all fields in declaration order like Java serialization. But in contrast to Java it will omit the fields of parent classes last while Java serialization emits them first. This makes it difficult to match a given XML schema that defined inherited types or leads sometimes to obscure initialization problems. However, XStream itself will not be affected by the changed order of elements in the XML, any deserialization of current XML representations will work fine. Anyway we will provide with XStream 1.3 a FieldKeySorter implementation that mimics the old behaviour. In the meanwhile you can enforce the new field sorting by installing the NaturalFieldKeySorter.

Major changes

Minor changes

API changes

Version 1.2.1

Released November 11, 2006.

Major changes

Minor changes

API changes

Version 1.2

Released August 18, 2006.

Major changes

Technology preview

Minor changes

API changes

Version 1.1.3

Released January 13, 2006.

Major changes

Minor changes

API changes

Version 1.1.2

Released April 30, 2005. Most popular feature requests implemented. Java 5 Enum support. Serialization of JavaBeans using accessors. Aliasing of fields. StAX integration, with namespaces. Improved support on JDK 1.3 and IBM JDK.

Major changes

Minor changes

API changes

Version 1.1.1

Released March 7, 2005. Mostly bugfixes and minor feature enhancements.

Major changes

Minor changes

API changes

Version 1.1

Released January 15, 2005. Focus on support for objects defining custom serialization using the standard Java serialization mechanism.

Major changes

Minor changes

API changes

Version 1.0.2

Released August 7, 2004. Focus on improving the converters bundled with XStream to support a wider range of types.

Major changes

Minor changes

API changes

Version 1.0.1

Released May 30, 2004. Misc features and bugfixes.

Major changes

Minor changes

API changes

Version 1.0

Released May 14, 2004. Focusses on finalizing the API for 1.0 release.

Major changes

Minor changes

API changes

Version 1.0 (release candidate 1)

Released May 9, 2004. Focusses on finalizing the API for 1.0 release.

Major changes

Minor changes

API changes

About XStream version numbers...

Version 0.6

Released May 7, 2004. Focusses on providing full object graph support.

Major changes

Minor changes

API changes

Version 0.6 (release candidate 1)

Released April 19, 2004. Focusses on providing full object graph support.

Major changes

Minor changes

API changes

Version 0.5

Released March 8, 2004. Focussed on performance.

Major changes

Minor changes

API changes

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

Minor changes

API changes

Version 0.3

Released January 1, 2004.

Major changes

Minor changes

API changes

Older versions

Changes in XStream prior to version 0.3 were not logged.