Both releases are mostly bugfix releases. Unfortunately both are going to break backwards compatibility for some people.

All modules of XMLUnit for Java now require Java7 as a minimum and the optional JAXB dependency has been updated to use the Jakarta XML Binding API. XMLUnit.NET has made ISource disposable which is going to break custom implementations.

Details for XMLUnit for Java 2.8.0

Details for XMLUnit.NET 2.9.0

path: /en/oss/XMLUnit | #

These two releases contain an incompatible change to the (I)PlaceholderHandler interface, thus the new minor versions. The Evaluate method now receives a variable number of string arguments in addition to the textual content of the element/attribute. This allows placeholders like ${xmlunit.matchesRegex(some\s*regex)}.

For XMLUnit.NET only the placeholders package has changed, for Java in addition the assertj module is now supposed to be compatible with AssertJ 3.15+.

Release Notes for XMLUnit for Java 2.7.0:

Release Notes for XMLUnit.NET 2.8.0:

path: /en/oss/XMLUnit | #

Both releases fix a common bug where the XPath reported for missing nodes could be wrong in certain edge cases.

This is the only change in XMLUnit.NET. In XMLUnit for Java the AssertJ module has also been improved and is supposed to be compatible with AssertJ 3.13+ now.

The full list of changes for XMLUnit for Java:

path: /en/oss/XMLUnit | #

The release fixes a bug in a corner-case and adds a new isNumber placeholder.

The full list of changes:

path: /en/oss/XMLUnit | #

This release is identical to XMLUnit.NET 2.7.0-beta-01. It adds support for .NET Standard 2.0 in addition to the traditional .NET Framework 3.5.

Many thanks to @shatl who performed most of the heavy lifting which has made this release possible.

path: /en/oss/XMLUnit | #