Skip to content

26.7.0

Choose a tag to compare

@github-actions github-actions released this 22 Jul 22:20

26.7.0 — Shared ToolError formatter + version alignment

What changed

  • Extracted the per-tool FormatException helper duplicated across MergeTool, SplitTool, and GetDocumentInfoTool into a single shared Tools/ToolError.cs (ToolError.Format(op, file, ex, subjectSuffix = null)). Every tool's catch block now calls it, so the descriptive-failure contract is defined once.
    • MergeToolError.Format("Merge", names, ex).
    • SplitToolError.Format("Split", file, ex, " (pages='<pages>')") — the optional subjectSuffix preserves the (pages='…') context that Split reported before.
    • GetDocumentInfoToolError.Format("Document-info lookup", file, ex).
  • Bumped the MCP package version 26.5.1 → 26.7.0 (CalVer) across build/dependencies.props, .mcp/server.json (both version fields), README.md, and llms.txt.

Why

Three tools carried byte-identical inner-exception-chain formatting loops. A single shared formatter removes the duplication, guarantees the "<op> failed for '<file>': …" prefix stays consistent, and matches the cross-product convention already used by the Metadata / Conversion MCPs.

Migration / impact

No behaviour change. The failure-text prefixes (Merge failed for, Split failed for, Document-info lookup failed for) and the (pages='…') suffix on Split are byte-for-byte identical to 26.5.1, so integration tests that pattern-match those prefixes keep passing. The engine (GroupDocs.Merger 26.4.0) is unchanged. No tool-name or input-schema changes.

Full Changelog: 26.5.1...26.7.0