Repository navigation
Conversation
sks
force-pushed
the
feat/record-table-serializer
branch
from
October 12, 2026 03:42
794b8d8 to
09c4a1e
Compare
sks
force-pushed
the
feat/record-table-serializer
branch
from
October 12, 2026 05:58
09c4a1e to
9138eed
Compare
2 tasks done
## Summary - Add opt-in record-oriented table output for Markdown exports. The default Markdown table format does not change. - Support `--markdown-table-format records` in `convert` and `convert-remote`. Remote conversion still applies the option only when writing Markdown locally. - Provide `export_to_record_markdown()` and `save_as_record_markdown()` for packaged SDK users. Keep image modes and other output formats unchanged. - Remove the fork-specific Serve integration from PR #1. The serializer does not replace a process-wide Core serializer. This branch is based on the current `stackgenhq/main`. [Draft PR #2](#2) contains the initial serializer. The [branch comparison](feat/record-table-serializer...feat/record-table-export-dmain) now shows only the 11-file opt-in addition, without unrelated upstream commits. ## Checks - Selected tests: 164 passed, 2 deselected (`test_cli_convert`), 91 warnings. - `make validate` passed on the 11-file opt-in changeset. - `git diff --check` passed. - Full repository test suite and `make check` were not run for this PR. This export option does not address conversion memory use or add a Docling Serve-wide option. A general Markdown serializer API remains a `docling-core` design decision. - [x] Documentation updated - [x] Tests added
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
RecordTableSerializeras an explicit choice forMarkdownDocSerializer. It reads source cells without constructing a padded table grid. The default Markdown export and structured document do not change.Review evidence
Before: the fork replaced the Markdown serializer at process startup and shipped a branded Serve image. After: an SDK caller opts in for one export; no process-wide replacement or branded files remain. Record text is not a Markdown pipe table. Conversion and final output still use memory.
uv run --no-sync pytest -q tests/test_table_records.py tests/test_backend_csv.py: 59 passed.make validate: passed.make check: not clean. It stops atcheck_max_lines.pyon 13 files that already exceed the 1,000-line limit on upstreammain. No changed file exceeds that limit. Ruff, ty (warnings), and Tach completed before that stop.Upstream ownership
The general Markdown serializer lives in
docling-core. This fork PR provides a neutral opt-in SDK implementation. A later contribution todocling-project/docling-coreshould settle its long-term home and public API. It does not enable this format in Docling Serve.