Skip to content

26.7.0

Choose a tag to compare

@github-actions github-actions released this 17 Jul 21:44

Bump engine to 26.6.0, extract shared ToolError, patch NU1903

What changed

  • Engine bump: GroupDocs.Annotation 25.11.0 → 26.6.0 (a ~7-minor jump). The
    net10.0 build resolves the GroupDocs.Annotation.Net80 sub-package. No public
    API drift — all 10 tools compile unchanged against the new engine
    (Annotator.Add/Get/Update/Remove/Save, ImportAnnotationsFromDocument,
    ExportAnnotationsFromXMLFile, Document.GetDocumentInfo/GeneratePreview,
    PreviewOptions, and the annotation model types are all stable).
  • MCP version: 26.5.0 → 26.7.0 (CalVer). Bumped in dependencies.props,
    .mcp/server.json (both version fields), README and llms.txt @-pins.
  • Shared Tools/ToolError.cs extracted. All 10 tools previously carried a
    duplicated private FormatException helper; they now route their catch
    through ToolError.Format(op, file, ex, subjectSuffix). Failure prefixes are
    byte-identical to before (Annotation failed for, Annotation lookup failed for, Annotation removal failed for, Annotation update failed for, Reply add failed for, Reply removal failed for, Annotation import failed for,
    Annotation export failed for, Document-info lookup failed for, Preview generation failed for), so integration tests that match the prefix are
    unaffected.
  • NU1903 security fix. The 26.6.0 engine transitively pulls
    Microsoft.NETCore.Jit 1.0.2 (via Microsoft.NETCore.Portable.Compatibility),
    flagged high-severity (GHSA-xcvr-qv8h-m7xw). Added a direct
    <PackageReference Include="Microsoft.NETCore.Jit" Version="1.0.18" /> override
    to restore a 0-warning build.
  • SkiaSharp pin note. 26.6.0 (now backed by Aspose.Drawing) pulls a
    consistent SkiaSharp 3.119.0 native-asset set (Linux/macOS/Win32), so the old
    2.80.1 ABI mismatch that originally justified the manual pin is gone. The
    3.119.4 pin is kept one patch higher for a patched libSkiaSharp.so and can be
    dropped in a future pass; comments in the csproj / dependencies.props updated.

Why

Keep the server on the latest stable engine, remove ~130 lines of duplicated
error-formatting boilerplate behind one shared helper, and keep the build free
of known-vulnerable transitive packages.

Migration / impact

None for consumers — tool names, schemas, response shapes, and failure-text
prefixes are unchanged. Docker still installs libgdiplus + libfontconfig1 +
ttf-mscorefonts-installer for glyph rendering on Linux.

Full Changelog: 26.5.0...26.7.0