Skip to main content
Skip table of contents

Pre-4.0.0 Archive

Release 3.0.0 - 26th July 2019

Dependency Changes

  • DITA Merge now requires Java SE version 8.0 or later to run (using a JDK or JRE as appropriate).

  • DITA Merge has been updated to use Saxon 9.8, it is shipped with 9.8.0.12

  • DITA Merge is now shipped with version 61.1 of icu4j.

Enhancements and New Features

  • DITA Merge now has a REST API for performing merges. This requires a separate license, please contact DeltaXML to find out more about it.

  • A new class (SequentialMerge) has been introduced. This class supports n-way merging of sequentially edited DITA documents.

  • DITA Merge can now handle formatting elements. There is a list of elements marked as formatting elements by default, and API settings to manipulate this list e.g. by adding extra elements to it. There are four different formatting elements representations provided. These representations are DELTA_V_2_1, CONTENT_GROUP, OVERLAPPING_MILESTONES and NON_OVERLAPPING_MILESTONES.

  • DITA Merge now allows users to specify a "format extraction priority list" to produce a deltaV2 result without fragmentation by extracting formatting elements to resolve overlaps and nesting.

  • Added new option to indent the output of a merge operation. This was customer support case 513.

  • Merging of DITA has been improved by ensuring that elements with sufficiently dissimilar content do not align. This feature is controlled via a new 'ElementSplitting' configuration.

  • CALS table processing no longer duplicates rows if there are no span changes.

  • ThreeWayDitaMerge and DitaConcurrentMerge have been renamed to ThreeWayMerge and ConcurrentMerge respectively.

Bug Fixes

  • 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.

  • RuleConfiguration settings for displaying simple modifications, and also in the case of three way merge the Version Priority List, were not actually being used by the merge operation. Additionally the RuleConfiguration object returned by calling getRuleConfiguration was not reflecting all of the actual settings as they currently stood. Both of these issues have been rectified.

Documentation Changes

  • Most of our Release Documentation, including documentation for code samples, has now been moved to our web site.

  • Our code samples have been removed from the release package, and moved to Bitbucket repositories. This allows us to easily add new samples or update existing ones without requiring a new DITA Merge release.

Deprecation and API removals

  • Removed deprecated methods LicenseExpiredException.getLicenseExpiryDate(), LicenseNotYetValidException.getStartDate(), ThreeWayMerge.merge(InputStream, InputStream, InputStream, OutputStream, String) and ThreeWayMerge.merge(Reader, Reader, Reader, Writer, String).

Release 2.2.4 - 7th July 2017

  • Bug Fix: DeltaXML DITA Merge no longer throws an error during CALS table processing when morerows attribute value is 0.

  • Bug Fix: DeltaXML DITA Merge no longer throws an exception while generating ANALYZED DELTAV2 result, if there are added/deleted contents like processing instructions, comments or entities.

Release 2.2.3 - 16th March 2017

  • 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 DITA 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.

Release 2.2.2 - 23rd December 2016

  • Bug Fix: DeltaXML DITA 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 2.2.1 - 26th 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 ThreeWayDitaMerge 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 ThreeWayDitaMerge class that have only one systemId parameter have been deprecated. These methods may be removed in a future major release.

Release 1.2.1 - 26th 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 ThreeWayDitaMerge 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 ThreeWayDitaMerge class that have only one systemId parameter have been deprecated. These methods may be removed in a future major release.

Release 2.2 - 28th 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 1.2

Release 1.2 - 28th June 2016

  • Enhancement: DeltaXML DITA Merge now supports intelligent table comparison for CALS tables and DITA simple tables.

  • Bug Fix: While generating the DITA MARKUP result, the additions and deletions were not represented properly using phrase containers. This has now been fixed. This was customer support case 487.

  • 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.

Release 1.1.1 - 4th January 2016

  • Enhancement: Made improvements to the debug mode to ensure that all relevant output is produced.

  • 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: The ThreeWayDitaMerge.TrackChangesAtrributeMode enumeration has been renamed to TrackChangesAttributeMode, fixing a typo in the name.

Release 1.1 - 11th December 2015

  • New Feature: A new class (ThreeWayDitaMerge) 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 dita 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 ThreeWayDitaMerge 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 DITA MARKUP) has been introduced. In this result format, a DITA document are marked up using DITA specific scheme. It uses rev and status attributes to identify change. However, this only applies to three to two merge results.

  • New Feature: A three-way track-change result type has been introduced to the ThreeWayDitaMerge class. This result provides oXygen track-change processing instructions which can be viewed and processed in oXygen author mode.

  • Enhancement: Added checks for class attributes on topic inputs so that the correct error is thrown if they are not present. All topic or topic specialization inputs must have class attributes defined (either explicitly or via a schema/DTD reference). This is to ensure that later processing works correctly.

  • 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.

  • 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. Core version updated to 7.1. This was customer support case 438.

  • 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.

Release 1.0.4 - 5th October 2015

  • Bug Fix: Enable redistribution licensing by passing through the setRedistributionLicenseContent method to the API and associated web site changes to support building of redistribution licenses.

Release 1.0.3 - 30th March 2015

  • Bug Fix: Three way textGroups were being incorrectly processed by the rule resolver (the code determining simple changes had a problem)

Release 1.0.2 - 27th February 2015

  • Enhancement: The rule resolution process handled added and deleted elements, text and attributes. Simple (non-conflicting) text and attribute modifications have now been included in the rule based resolving. This was customer support case 409.

Release 1.0.1 - 25th April 2014

  • Bug Fix: Fixed issue in rule-based resolving where complex text-only changes were being incorrectly identified as simple 'add' or 'delete' changes.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.