Release Documentation

Release Notes

Release 6.0.1

7th March 2018

  • Bug Fix: An Exception was thrown when an unchanged thead, tbody, or tfoot inside a modified table contained row spanning across multiple rows in that section. The bug has been fixed. This was customer support case 654.
  • Bug Fix: When CALS tables contain processing instructions, there was the possibility that processing them as part of the table processing caused an Exception in the 'cals-overlap' XSLT filter. The bug has now been fixed. This was customer support case 655.

Release 6.0

6th February 2018

Dependency Changes

  • DeltaXML Merge now requires JavaSE version 7.0 or later to run (using a JDK or JRE as appropriate).
  • DeltaXML Merge is now shipped with Saxon 9.8.0.5.
  • Distributed version of Apache Xerces updated to Xerces 2.11.0 from 2.9.0

Enhancements and bug fixes

  • A new class (SequentialMerge) has been introduced. This class supports n-way merging of the sequentially edited XML content (data or documents).
  • New Feature: Updates to allow restriction of delta results when running with an evaluation license. This has unfortunately become necessary after abuse of our terms and conditions regarding evaluations. Please see the XML Merge download page for more details on the nature of the restrictions.
  • New Feature: Added support for progress monitoring using a new MergeProgressListener interface.
  • New Feature: Changed syntax for command-line interface. This now supports ConcurrentMerge, SequentialMerge and ThreeWayMerge.
  • Enhancement: Added new option to indent the XML output of a merge operation. This was customer support case 549.
  • Enhancement: For ConcurrentMerge, merging of XML has been improved by ensuring that elements with sufficiently dissimilar content do not align. This feature is controlled via a new 'ElementSplitting' configuration.
  • Enhancement: Improved word-matching, this affects specific complex cases, and also improves the overall merge result. This was customer support case 537.
  • Enhancement: Performance improvements by using accumulators while applying keys. This was customer support case 625.
  • Improved CALS table processing performance.
  • Renamed package com.deltaxml.mergeinternals to com.deltaxml.mergecommon.

Release 5.3.3

5th July 2017

  • Bug Fix: DeltaXML Merge no longer throws an error during CALS table processing when morrows attribute value is 0. This was customer support case 548.
  • Bug Fix: DeltaXML Merge no longer throws an exception while generating ANALYZED DELTAV2 result, if there are added/deleted contents like processing instructions, comments or entities. This was customer support case 580.

Release 5.3.2

16th March 2017

  • New Feature: DeltaXML Merge no longer throws an error when the deltaxml.jar is added before the deltaxml-merge.jar on the classpath. This was affecting Eclipse users. This was customer support case 543.
  • New Feature: A new ignore/accept mode (ExistingOxygenTCsProcessingMode) introduced to process existing oxygen track changes processing instructions while generating oxygen track changes result.
  • Bug Fix: DeltaXML Merge no longer throws an exception while producing three way track changes result with inputs containing contents such as processing instructions, comments and entities. This was customer support case 532.

Release 5.3.1

23rd September 2016

  • Bug Fix: During rule-processing, the "display changes involving ..." settings were being incorrectly applied to content that was deleted in one version and modified in another. These were being incorrectly resolved as a deletion. This bug has now been fixed and these content items are correctly included as a conflict. This was customer support case 514.
  • Bug Fix: Minor updates to table processing in merge.
  • Bug Fix: The ThreeWayMerge class includes new merge methods that specify a systemId parameter for each input. These replace the now deprecated merge methods and systemIds are utilised correctly during the merge.
  • Deprecated: Merge methods from the ThreeWayMerge class that have only one systemId parameter have been deprecated. These methods may be removed in a future major release.

Release 4.3.1

23rd September 2016

  • Bug Fix: During rule-processing, the "display changes involving ..." settings were being incorrectly applied to content that was deleted in one version and modified in another. These were being incorrectly resolved as a deletion. This bug has now been fixed and these content items are correctly included as a conflict. This was customer support case 514.
  • Bug Fix: Minor updates to table processing in merge.
  • Bug Fix: The ThreeWayMerge class includes new merge methods that specify a systemId parameter for each input. These replace the now deprecated merge methods and systemIds are utilised correctly during the merge.
  • Deprecated: Merge methods from the ThreeWayMerge class that have only one systemId parameter have been deprecated. These methods may be removed in a future major release.

Release 5.3

27th June 2016

  • New Feature: Flexera License management is included in this release to support new named-user, server and concurrent server/user licensing systems. There are some API modifications to support new licensing system, but otherwise the release functionality should be equivalent to release 4.3

Release 4.3

14th June 2016

  • New Feature: DeltaXML Merge now supports intelligent table comparison for CALS tables, HTML tables and DITA simple tables
  • Bug Fix: DifferentRootElementException was thrown while adding an ancestor file which is the first file added to the merge. Ideally, the merge should not throw DifferentRootElementException during this process. This has now been fixed.
  • Bug Fix: The setThreeWayTrackChangeAtrributeMode and getThreeWayTrackChangeAtrributeMode methods have been renamed to setThreeWayTrackChangeAttributeMode and getThreeWayTrackChangeAttributeMode, fixing a typo in the name.

Release 4.2

22nd February 2016

  • Enhancement: Enable redistribution licensing by passing through the setRedistributionLicenseContent method to the API and associated web site changes to support building of redistribution licenses.
  • Enhancement: Reduction in Java heap memory requirements in order to allow garbage collection of intermediate objects. For some pipelines this can halve the heap space needed. The included deltaxml.jar corresponds to that used in Core version 7.1. This was customer support case 438.
  • Bug Fix: Fixed an error in the three-way tracked changes processing that was causing an Exception to be thrown when outputting certain change combinations. This was customer support case 462.
  • Bug Fix: When producing three-way-tc output with conflicting changes to an attribute value in TrackChangesAttributeMode.PREFIX mode, the author of the deletion of the ancestor version of the attribute is now correctly identified as both editors, rather than the ancestor.
  • Bug Fix: Three way track changes were producing incorrect results in case of complex addition in attributes. This has now been fixed. This was customer support case 446.
  • Bug Fix: The ThreeWayMerge.TrackChangesAtrributeMode enumeration has been renamed to TrackChangesAttributeMode, fixing a typo in the name.

Release 4.1

18th September 2015

  • New Feature: A new class (ThreeWayMerge) has been introduced. This provides easier to use facilities for the common three-way use case and additionally provides further three-way specific result types.
  • New Feature: New samples are provided to allow merge access from git and mercurial (hg) merge and update operations. These shell-script samples currently support the command-line client usage on a unix system. This was customer support case 345.
  • New Feature: A new, simplified result type has been introduced with the ThreeWayMerge class to provide a two-way result for the common case of branch merge. The simplification allows processing with familiar two-way processes and user interfaces such as two-way track-changes. However, in some cases information is lost that would otherwise be present in a three-way delta result. Command-line and sample code is provided to support these new representations.
  • New Feature: A new result format (the simplified delta) has been introduced. This format is designed to simplify the manual processing of conflicts and is available for both n-way and three-way merge processes.
  • New Feature: A three-way track-change result type has been introduced to the ThreeWayMerge class. This result provides oXygen track-change processing instructions which can be viewed and processed in oXygen author mode.
  • Enhancement: The rule based processing has been extended to allow a version priority list to be used to resolve conflict situations. The order of the versions in the provided list determines how conflicts are resolved.

Release 4.0.2

20th May 2015

  • Enhancement: The version of the saxon product included in this release has been upgraded to version 9.5.1.10 as this provides significant performance improvements for some data (providing a 10x speed improvement for one customer test case).
  • Bug Fix: The merge setExtensionPoint method was incorrectly obfuscated. This has been corrected by restructuring the way in which the merge product is provided as jar files. In this and future releases a jar file from the core product (deltaxml.jar) will provide access to FilterChain and other classes referenced and used by the merge jar file. In this merge release only the deltaxml.jar provided with the merge product should be used. However, it is intended to provide a degree of compatibility with several versions of the DeltaXML Core product in future releases for customers using both products in their Java classpaths.
  • Bug Fix: Certain attribute merge scenarios, with multiple attributes, caused duplication of the elements used to represent the changes within the deltaxml:attributes element. This has been corrected so that the children of deltaxml:attributes have unique names and namespaces.

Release 4.0.1

25th March 2015

  • Enhancement: The guides for change analysis and rule processing have been improved with more samples.
  • Enhancement: Some repetitive output in the command line usage message was reduced.
  • Enhancement: The default value of the debug parameter has been changed to false. This was reported when using the command-line tool.

Release 4.0

18th February 2015

This is the first release of a new generation of 'Merge' products. It is intended to follow on from the DeltaXML Sync product and its 3.0 release and this is why version numbering has started from 4.0

The architecture of DeltaXML Merge has major differences from the previous Sync products, this includes the ability to operate at word granularity, orderless merge and keying support, differences in output representation and output formats and a completely new API. Existing Sync users should contact us for migration assistance.