Skip to content

MarkItDown 2Ways v0.2.0

Choose a tag to compare

@github-actions github-actions released this 11 Sep 11:57
fa89797

MarkItDown 2Ways v0.2.0

Phase E adds conservative native round trips for proven-simple DOCX and PPTX table cells while preserving the fail-closed fidelity model established in v0.1.0.

Included

  • identity Markdown tables can emit deterministic update_table_cells edits for changed coordinates only
  • table-level semantic/native-locator preconditions plus per-cell old_text stale-write evidence
  • DOCX simple table-cell text patching through existing native text carriers
  • PPTX simple table-cell text patching through existing DrawingML text carriers
  • semantic readback and native-target preservation verification for touched tables
  • fail-closed handling for merged/spanned cells, nested tables, multi-paragraph cells, ambiguous carriers, structural/style/layout mutations, and charts
  • hardening against Markdown boundary-whitespace loss, foreign local-name namespace spoofing, and mixed Transitional/Strict OOXML table namespaces

Verification

Release target tree 00a42aa66061ecbb27617fe2d2391935b7d5bacf is byte-identical to the synthetic PR merge candidate validated by GitHub Actions.

  • pre-commit: PASS
  • Python 3.10: 704 passed, 33 skipped, 0 failed
  • Python 3.11: 704 passed, 33 skipped, 0 failed
  • Python 3.12: 704 passed, 33 skipped, 0 failed
  • Python 3.13: 704 passed, 33 skipped, 0 failed
  • OCR matrix on Python 3.10–3.13: PASS

Scope

This remains a bounded two-way document layer, not a general Office editor. Table structure, style/layout, merged/spanned cell mutation, chart mutation, and unsupported complex native edits remain read-only or fail closed.

This is a fork-specific GitHub release tag. It does not replace or publish over the upstream markitdown PyPI package/version identity.