GroupDocs.Comparison for .NET 26.8 Release Notes

GroupDocs.Comparison version 26.8 focuses on the Side-by-Side comparison mode: the comparer now builds its result fully in memory instead of relying on temporary files, the detected change list is available for Side-by-Side PDF results, and a concurrency issue that caused crashes during parallel PDF comparison has been fixed.

Full list of changes in this release

KeyCategorySummary
COMPARISONNET-4828EnhancementIn-memory stream processing in Side-by-Side comparison
COMPARISONNET-4728EnhancementChange list is now available for Side-by-Side PDF results
COMPARISONNET-4830🔧 FixFix crashes during concurrent PDF comparison

Enhancements

Change list is now available for Side-by-Side PDF results

Previously, when the comparison result was generated in the Side-by-Side PDF mode, the list of detected changes was not returned. Starting from this release, Compare returns the full change collection in this mode as well, so the changes can be inspected, counted, or exported alongside the produced document.

using (Comparer comparer = new Comparer("source.docx"))
{
    comparer.Add("target.docx");

    var options = new PdfCompareOptions()
    {
        DisplayMode = PdfCompareOptions.ComparisonDisplayMode.SideBySide,
    };

    comparer.Compare("result.pdf", options);

    ChangeInfo[] changes = comparer.GetChanges();

    foreach (ChangeInfo change in changes)
    {
        Console.WriteLine($"{change.Id}: {change.Type} - {change.Text}");
    }
}

Fixes

Fix crashes during concurrent PDF comparison

Running several PDF comparisons in parallel could lead to unexpected exceptions and process crashes caused by shared state inside the PDF processing pipeline. The affected components are now thread-safe, so multiple PDF comparisons can be executed simultaneously — for example, from a web service handling concurrent requests or from parallel batch processing.