v0.7.0 Release Notes¶
This release publishes the workbook editing work completed under issue #99,
including the new exstruct.edit API surface, the editing CLI, compatibility
follow-ups, and maintainer-facing documentation needed to keep the layering
clear for future changes.
Next steps¶
Currently, the CLI startup is slow due to issues with the initial implementation, so we plan to release an update in the near future to improve its performance.
Highlights¶
- Added a first-class workbook editing API under
exstruct.edit, including: - public
patch_workbook()/make_workbook()entrypoints - public request/result models
- shared patch-op schema discovery helpers
- Added public editing CLI commands under
exstruct: patchmakeopsvalidate- Clarified the editing architecture split so
exstruct.editis the canonical core and MCP remains the host-managed integration / compatibility layer. - Updated public docs to explain canonical usage across Python, CLI, and MCP,
including the recommended
dry_run -> inspect -> applyworkflow and thebackend="auto"caveat for same-engine comparisons. - Added maintainer-facing documentation coverage for editing architecture,
specs, ADR alignment, and agent workflow expectations used during the issue
#99closeout. - Fixed release-significant review follow-ups, including:
- top-level
sheetfallback while preservingop.sheetprecedence - legacy monkeypatch compatibility across compatibility shims
- rename-reservation cleanup on openpyxl failure paths
- dry-run / backend / CLI failure wording drift in docs
Notes¶
- The legacy extraction CLI invocation (
exstruct INPUT.xlsx ...) is unchanged. - MCP tool names and payload shapes remain compatible in
v0.7.0. - Patch backend policy remains
auto/com/openpyxl; this release does not change backend selection semantics.