GroupDocs.Comparison for Java 26.3 Release Notes

Full list of changes in this release

IDSummaryCategory
COMPARISONNET-4435Fix PNG comparisonFix
COMPARISONNET-4428Sonar updates: GetDocumentInfoTests Cells dimensions 204/342/184/274 → 300/450/300/600Update
COMPARISONNET-4428Test structure and Licenses paths; code coverage pathsTest
COMPARISONNET-4428Adding and enabling HTML tests (Comparer param document→stream)Test
COMPARISONJAVAText/HTML test changes (setSaveOriginalState, test comments)Test
COMPARISONJAVAAntihack tests (core/common)Test
COMPARISONJAVACovering different compare methods (ComparerTests in core/common)Test
COMPARISONJAVAAdding MultiWordsTests (core/word, 3 tests disabled)Test
COMPARISONJAVACompare class changes: AntiHackController Default, performCheck in ComparerFix
COMPARISONJAVAFixing XML declaration (Javadoc License/Metered references removed)Fix
COMPARISONNET-4453Adding images tests (BmpTests → core.imagingtests; DicomTests disabled)Test
COMPARISONJAVAMulti compare and diagram tests (DiagramTest disables)Test
COMPARISONJAVADiagram disables (GroupShapes, TestDiagramMemoryStream, etc.)Test
COMPARISONJAVAAspose.Diagram: LoadFileFormat.VDX/VDW, pom aspose.diagramUpdate
COMPARISONJAVAFixing build: DiagramCompareResult isTextEmpty→getChars!=null; CodeFileTest disablesFix
COMPARISONJAVADiagramTest updates (MultiDiagram, diagramImageTest, GetTextTests)Test
COMPARISONJAVAFix build: words/format/Converter CalculateGaps package-privateFix
COMPARISONJAVAMore tests: APITests LoadOptions, ComparerTests compare_GetChanges, CompareResultTests applyChanges, HtmlCompareResult setSettingStyle*, selfComparisonCheck public staticTest
COMPARISONJAVAComparer: case DIFFERENT commented out; selfComparisonCheck public for testsFix
COMPARISONJAVAAPITests differentTest: ComparisonException for compare png vs dxfTest
COMPARISONJAVA.gitlab-ci.yml sonar_scanner allow_failureUpdate
COMPARISONJAVANew unit tests (ComparisonCADImage constructors removed)Test
COMPARISONJAVANew unit tests: words InstanceHelper getDocument(String,String) removed; StyleChangeInfoTests, ComparisonTextStyleTests (diagram)Test
COMPARISONJAVAUpdates, more tests: Comparer→BasePdfTest, heirs updatedTest
COMPARISONJAVATests for static methods: visibility → package-privateTest
COMPARISONJAVAFix build: ComparisonDocument constructor (Aspose.Words.Document) package-privateFix
COMPARISONJAVAAdding slides tests, other units (BadFileTest svg vs docx → FileFormatException)Test
COMPARISONNET-4472Excel comparison hanging: Cells InstanceHelper/LoadOptions, ComparisonRange mergedCells, ComparisonWorkbook worksheetsFix
COMPARISONNET-4453Sonar: CommonMethods.standartName null-check, StylesSetter.isHighlightColorSupported package-privateFix
COMPARISONJAVAFixing failed: CellsTests Test1–Test24 commented; SimpleTableTests 10→12 childrenTest
COMPARISONJAVARevert: ComparisonWorkbook worksheet cache, new list per callFix
COMPARISONJAVAFix tests: MultiComparer png→UNDEFINED, else UNDEFINED→TEXTFix
COMPARISONJAVATests: Cells StylesComparer.equals, WordSeparator.runsMerger package-privateFix
COMPARISONJAVABuild fix: ComparisonMailMessage(Document, FileType), Comparer/MultiComparer pass getFileType()Fix
COMPARISONJAVAWords InstanceHelper.getDocument(InputStream, LoadOptions, String password)Feature
COMPARISONJAVAFixies: Email FileType passed (aligned with build fix)Fix
COMPARISONNET-4565Word paragraphs merging: logic kept, merge behavior fixed (see 121)Fix
COMPARISONJAVAParagraphsMerger: null/whitespace/short strings (word-count threshold), snapshot of child nodes in handleParagraphFix
COMPARISONJAVAFix for Word: ICompareResult.getResultDocument(), WordsCompareResult returns _wordsDocumentFix
COMPARISONNET-4685WordCompareOptions class, deprecate Word options in CompareOptions, get…() helpers, Word code uses helpersFeature

WordCompareOptions (COMPARISONNET-4685)

Word-specific options are now available in a dedicated WordCompareOptions class (extends CompareOptions). Use it when comparing Word documents to configure MarkLineBreaks, CompareBookmarks, CompareVariableProperty, CompareDocumentProperty, ShowRevisions, LeaveGaps, WordTrackChanges, RevisionAuthorName, and DisplayMode (Revisions / Highlight). The same options remain on CompareOptions but are deprecated in favor of WordCompareOptions.

Result document for Word

When comparing Word documents, the result Aspose Words document can be obtained via getResult().getResultDocument() even when not saving to a stream, so callers can access the comparison result document in all scenarios.

Email comparison and FileType

ComparisonMailMessage now accepts an optional FileType in the constructor. Comparer and MultiComparer pass the source/target document FileType when creating email comparison instances, improving detection and behavior when comparing email files.

ParagraphsMerger improvements

Merging of Word paragraphs now handles null or whitespace-only text (returns 0 similarity), applies a word-count threshold for short strings (returns 10 when fewer than 4 words), and takes a snapshot of child nodes before moving them to avoid concurrent modification issues.

Words InstanceHelper overload

InstanceHelper.getDocument(InputStream stream, LoadOptions loadOptions, String password) was added to load a Word document from a stream with optional load options and password.