Enhancement: Modified parameter settings for the underlying comparison to improve the matching algorithm used.
New Feature: Tables can now optionally be keyed by their table
name using the setKeyTableByName(boolean) method.
Enhancement: The structure of the compare parameter settings that are added to the meta file has been improved to make it more readable.
Default Setting: The default setting of the ignoreCarriageReturns
parameter has been changed to false. This is to avoid confusion that it causes when using keys in the
input documents.
Bug Fix: Fixed a bug that caused empty paragraphs before a page-break to remain in the result document under certain circumstances when they should have been removed.
Bug Fix: ODT Compare correctly handles internal conversion of a filename into a URI. Previous versions threw an Exception when filenames containing certain characters (e.g. square brackets '[', ']') were compared.
Bug Fix: Added and deleted text fields are now marked correctly using the defined styles.
Enhancement: Speed and memory use improvements to the underlying comparison engine.
New Feature: Added the ability to remove empty paragraphs that occur directly before a page break in the result file. This can stop unwanted blank pages appearing in the result.
Bug Fix: Fixed a text span recreation bug that could cause words to be missing from the result.
Dependency Change: Common code version is now 2.0.0. See common code release notes for details
Bug Fix: Modified the way that OpenOffice.org Build 9238 is identified from the generator string to allow for user customisations that may modify this string. For Build 9238 to be identified, the generator string must now contain the string 'OpenOffice.org' and end with 'Build-9238'
Bug Fix: Fixed a bug that caused a FileNotException to be thrown if embedded images or objects were used in headers or footers (i.e. used in styles.xml).
Enhancement: The underlying architecture for running filter chains has been updated. This should allow a comparison to run with a much smaller Java heap size than previous versions
New Feature: The meta file now includes some change metrics: unchanged word count, added word count and deleted word count. These can be viewed in OpenOffice.org under the File > Properties dialog.
Enhancement: Improved error messages reported by the command line tool when incorrect commands are used
Bug Fix: Fixed a bug in the code that checks that the available common code version is recent enough
Dependency Change: Common code version is now 1.2.0. See common code release notes for details
Distribution Change: The ODT Track Changes Processor, ODT Keyer and ODT Metadata Processor products are no longer distributed as part of ODT Compare. They are now available as individual distributions on their own
Bug Fix: Images embedded in documents containing spaces in their path name are now compared correctly
Enhancement: Compare now removes soft page breaks from inputs. This is the behaviour recommended in the ODF specification for applications that make no use of such elements.
Enhancement: Command line Compare tool now requests confirmation before overwriting a result file.
Dependency Change: Common code version is now 1.1.1. See common code release notes for details
N.B. This release is not backwards compatible with previous releases.
New Feature: New exception hierarchy. See javadoc for details.
Enhancement: New distribution packaging structure. Common classes are now in a separate jar file, as is the command line tool.
Enhancement: setX methods that take integer parameters now have input validation.
New Feature: Changes that involve only whitespace characters can now be suppressed
in the output using the setWhitespaceOnlyChangeOutput method.
Bug Fix: Non-breaking spaces are now correctly treated as whitespace.
New Feature: The triple table output can now be switched off if required using the
suppressTripleTableOutput(boolean) method.
Enhancement: Parameters used in the comparison are now saved in the metadata. This will enable faster debugging of reported problems.
Bug Fix: Keyed paragraphs are no longer split into deleted/added paragraphs when they have a large amount of change in them. behaviour for unkeyed paragraphs remains the same.
Enhancement: Footnotes occurring in the input 1 and input 2 table versions in the triple table output no longer contribute to automatic footnote numbering.
Enhancement: Reworded the labels on the triple table output from 'Old table' to 'Input 1 table' and 'New table' to 'Input 2 table'.
Enhancement: Removed the 'Cannot display table' message when a table cell contains both a paragraph and a nested table. The table is now displayed instead.
Bug Fix: Fixed a bug in numbering of list items converted into paragraphs that could occur when there were deleted list items in tracked changes.
Bug Fix: Fixed a bug in tables that occurred when normal rows were turned into header rows
Bug Fix: Setting ignoreCarriageReturnChanges to false caused an Exception when attempting to access a styles.xml file during comparison of content.xml files
Bug Fix: List items are no longer converted into numbered paragraphs if they occur within a footnote. This was causing duplicate numbers to be produced for the footnote
Bug Fix: Fixed a problem in the key-tidy code to correctly handle keyed paragraphs containing text boxes that themselves contain keys
Bug Fix: We now support correct list numbering of documents produced by OOo 2.3 Build 9238 which uses a slightly different numbering algorithm than other versions
Deprecation: Enumerations specified as inner enums in OdtComparator
are now deprecated, as are the methods that take them as parameters. The equivalent enumerations defined in the
com.deltaxml.odf package should be used instead.
Enhancement: Added a pipeline stage which removes any unused styles that may be present in the automatic-styles section of the content file. This can significantly reduce the size of the result file and speed up its opening time.
Bug Fix: Fixed a bug when converting lists into paragraphs and calculating paragraph indentation: exception was thrown when lengths specified in points (pt) were added to lengths specified in centimetres (cm)
Bug Fix: Constant value PIPELINE_STRIKE on
OdtComparator was not visible at compile time
Enhancement: When converting lists to paragraphs,paragraph styles defined in styles.xml and applied to list items are now preserved
Enhancement: Continued numbering on lists within different table cells when converting lists to paragraphs is now implemented
Bug Fix: List headers are now converted when converting lists to paragraphs
Enhancement: Multi-level list numbering e.g. 1.1.a, is now implemented
Bug Fix: Unnumbered list items now do not affect the numbering of subsequent items when converting lists to paragraphs
Bug Fix: Implied list numbers (i.e. when skipping a list-level, the level in between is still counted) are now implemented when converting lists to paragraphs
Bug Fix: setXXX() methods that take one of the three
enumerations as parameter threw a NullPointerException if a null value was passed. The value is now
set as the relevant enum's NONE value instead.
Bug Fix: Exception was thrown if the comparator was configured to convert lists and the input contained a list item that referred to an outline-level style. These items are now numbered correctly.
Enhancement: Improved image/object handling. Deleted images and objects are now
displayed in the result. Images and objects whose equality cannot be determined (due to missing hrefs etc)
now have an optional border/background color that can be set using the
OdtComparator.setUncomparableImageBorder(Color) and
OdtComparator.setUncomparableObjectBackground(Color) methods.
Enhancement: Improved handling of meta.xml files. Meta information is preserved where possible/sensible and OdtComparator release information is added to aid in the debugging process.
Enhancement: Improved automatic style handling. the new algorithm reduces the size of the data passed through the pipeline, this improving comparison speed. Other benefits include a reduction in the number of automatic styles in the result file and more accurate preservation of old styles where applicable.
New Release File: Included saxon9-dom.jar in the release.
Bug Fix: Enumeration classes in OdtComparator were not visible at compile time
New Feature: Track change processing. A utility for processing track-change information in ODT files has been provided. Initially the only operation provided is to "accept" all changes. Future releases may provide additional operations. API and command-line support is provided see javadocs and usage messages for further information.
Enhancement: New value added to the
com.deltaxml.odf.OdtComparator.FontDecoration enumeration
(FontDecoration.NONE). Setting the font decoration to this
value means that any font decoration will be inherited from
style information in the original documents. Similar NONE
support is also provided in the FontWeight and FontStyle
enumerations/methods.
Enhancement: All setXXX() methods taking a Color as a parameter will now accept a null reference
as a value. Using this value means that any colour will be inherited form style information in the
original documents.
Enhancement: Reevaluated and updated the default setting associated
with the setMaximumOrphanedWordCount() method. The new default value of 2 means that orphan processing
is now enabled by default.
Bug Fix: Fixed threaded code that very occasionally caused the comparison to fail.
Bug Fix: One of the list filters was throwing an error when using sync or comparison results as an input to a comparison
New Feature: Lists are now flattened into paragraphs (which include the number or bullet).
This gives better results for text that is in a list in one or both inputs. This feature can be turned
off using the setConvertListsToParagraphs(boolean value) method
New Feature: The ODT Keyer API is now included as part of the ODT Comparison release
Enhancement: multithreaded loading of input documents. The comparator can therefore make use of multiple CPUs/CPU Cores (up to a maximum of 3 during some parts of the comparison process)
Enhancement: Carriage returns can now optionally be ignored in paragraphs within table cells.
Use the setIgnoreTableCellCarriageReturns(boolean value) parameter setting method to configure this
Enhancement: The ODT Compare jar file now lo longer depends on deltaxml.jar.
Bug Fix: added/deleted tabs were not being highlighted in some cases. This is now fixed
Enhancement: Complete rework of the algorithm that handles carriage return changes.
New Feature: Added or deleted empty paragraphs can now be highlighted with a background color.
This makes identifying them possible in the result document. This feature is parameterisable using the
setHighlightEmptyChangedParas(boolean), setAddedEmptyParaColor(Color) and
setDeletedEmptyParaColor(Color) methods.
Enhancement: Improved the algorithm that handles carriage return changes.
New Feature: It is now possible to ignore any keys in the documents during the comparison
by calling the setKeyedComparison() method with a value of false.
Bug Fix: The page break bug fixed in the previous release was still occurring in some circumstances.
Bug Fix: When outputting modified tables, small changes to a row were causing it to be split into a deleted and added row when this was not necessary.
New Feature: Individual set methods for each of the comparison parameters have been added. Where possible, these take strongly typed parameters to avoid the need for throwing Exceptions for invalid input.
New Feature: Image border colors for added, deleted and modified images can now be set by the user
New Feature: OLE object background colors for added, deleted and modified OLE objects can now be set by the user
Deprecation: The setParameter(String, String) method has been deprecated. The use of the new set methods
is recommended.
Enhancement: Any tracked changes present in the input documents are now removed before comparison
Bug Fix: A minor bug that caused issues when a result table had both a paragraph and a table in a single table cell.
Bug Fix: Fixes to the threshold filter to stop it splitting paragraphs into separate deleted and added paragraphs when it is not appropriate.
Bug Fix: Improved the handling of styles in the deleted/added table reproduction of a table modification.
Bug Fix: Added an extra filter to remove any intermediary in-house elements and attributes that may have remained in the result file.
New Feature: Enabled the user to change the text colour, text style, text decoration and background colour of deleted and added text sections. These can be set using various methods in the API.
Enhancement: Improved the way added and deleted carriage returns (that produce/delete paragraphs) are handled. This improved feature should now show changes in fewer situations where common text is present at the end of one paragraph and the start of the next.
Bug Fix: Improved the handling of page-break; these were being incorrectly removed in some cases.
Bug Fix: Improved the comparison of images. This bug was causing too many images to be marked as changed when, in fact, they were unchanged.
New Feature: Image changes can now be ignored completely. Addition and deletion are still marked as such but where an image has changed, the image in the second input document is displayed with no markup.
Enhancement: Improved modified table output
New Feature: ODT Comparison now takes advantage of paragraph keys where present to improve matching
Bug Fix: Changes to the jar structure to avoid potential classpath problems between versions of ODT keyer, comparator and synchronizer
Enhancement: Where orphaned word processing causes adds and deletes to contain common text at their start/end, it is now extracted as unchanged
Bug Fix: changes to the remove-exchange filter. A bug was causing text to move in certain circumstances.
Bug Fix: changes to stop page breaks from being removed
Enhancement: square brackets ('[' and ']') have been added to the punctuation list
Bug Fix: fixes in the threshold filter to stop it splitting modified paras into old-para/new-para when the only content they have is unchanged plus purely adds or purely deletes.
New Feature: added a 'red/green' filter that brings together a sequence of mixed consecutive adds and deletes into all deletes followed by all adds, e.g. add, delete, delete, add goes to delete, delete, add, add
New Feature: New filter to show carriage return insertion/deletion as no change within paragraphs.
Bug Fix: non-unique deltaxml:key values during styles.xml comparison (ticket 22)
Enhancement: Parameters to control object-threshold and orphaned-words filtering with default values chosen after testing the acceptance data
New Feature: newline change minimizer (reduces changes caused by new line insertion and removal and their effects on paragraph structure)
Bug Fix: List processing still disabled
New Feature: basic API support
New Feature: multiple pipelines (track, strike) in API and command-line
Bug Fix: Problem with svg:height and svg:width attributes missing in ICM318 - fixed by disabling list matching code
New Feature: Inline (non-spannable) changes represented using +[[ ]]+ style notation.
Bug Fix: Fixed trac ticket 5: Unchanged draw:object marked as changed
Bug Fix: Fixed trac ticket 6: Deleted object not shown/indicated
New Feature: Changes to images are shown with a coloured border, red, green, blue for deleted, added, modified respectively
New Feature: Change to object-ole content is shown with a coloured background, red, green, blue for deleted, added, modified respectively
Enhancement: When a structural table change causes three tables to be output (old, new and change representation), the old table now has a red background and the new table a green background.
Enhancement: Structural change to a table that involves deletion or addition of empty rows or individual table cells no longer triggers the 3-table output.
Enhancement: Better processing a span addition or deletion, for example when a single character in a word has had style added to it. This will no longer be shown as a content change.
Bug Fix: Fixed a bug where deleting the first paragraph to use a new page-style (including the first page) caused a page-break to be inserted immediately after that paragraph in the diff document.