The PropertiesConverter [1] currently serializes its map of key-value entries without ordering them first. Thus the resulting XML may change between runs, which is not very diff-friendly.
A possible solution could look like this (in PropertiesConverter.marshal(...)):
TreeSet s = new TreeSet(properties.keySet());
for (Iterator iterator = s.iterator(); iterator.hasNext();) {
Object key = iterator.next();
Object value = properties.get(key);
Cheers,
Christopher
[1] -
http://xstream.codehaus.org/javadoc/com/thoughtworks/xstream/converters/collections/PropertiesConverter.html