Repository navigation
Releases: capt1nedev/docx-repro
Release list
docx-repro 0.1.2
docx-repro 0.1.2 updates the installation instructions for the live PyPI package and fixes documentation links when the README is displayed on PyPI. The reducer and checker behavior are unchanged from 0.1.1.
In a virtual environment:
python -m pip install "docx-repro[demo]==0.1.2"
docx-repro-demo demoThe runnable synthetic Mammoth demo reduces 201 body blocks to the one paragraph that preserves the missing-text symptom. A real MarkItDown investigation reduced a reported list problem from eight paragraphs to two.
The publishing workflow validates the tagged package with 52 tests and the installed demo across Windows/Linux and Python 3.10/3.13 before uploading. It uses a scoped PyPI Trusted Publisher without a stored PyPI API token.
Early alpha: reduction removes whole body blocks and retains supporting package parts and metadata. Review the checker contract and output before sharing; reduction is not anonymization.
v0.1.1 — installed demo and Mammoth checker
docx-repro 0.1.1 makes the alpha usable directly from an installed package.
docx-repro-demo demogenerates an original synthetic DOCX and reduces the documented Mammoth text-loss symptom from 201 body blocks to one.--mammoth-missing-text "Expected phrase"recognizes missing visible text without a custom checker. It requires the phrase in the source and treats unrelated conversion failures as inconclusive.- A real MarkItDown case study reduces an existing report from eight paragraphs to two and identifies flattening already in the Mammoth HTML.
- Includes a GitHub/PyPI Trusted Publishing workflow and release guide. PyPI account setup controls whether the upload can proceed.
- 52 automated tests; Windows/Linux CI; fresh wheel installation and Twine metadata checks.
Install the release with its demo dependency:
python -m pip install "docx-repro[demo] @ https://github.com/capt1nedev/docx-repro/releases/download/v0.1.1/docx_repro-0.1.1-py3-none-any.whl"
docx-repro-demo demoFirst alpha: reduction removes whole body blocks. It is not anonymization, and retains supporting package parts. See the README for the checker contract and limits.
v0.1.0 — first alpha
docx-repro reduces DOCX parser bug reports while a user-supplied checker confirms the exact symptom. The first alpha removes whole body blocks without reserializing the document XML, and preserves supporting part payloads.
The runnable Mammoth 1.13.0 example reduces 201 body blocks to one while keeping a documented text-loss symptom and a hyperlink relationship. The input remains unchanged. Reports record checks, hashes, retained indices and the search status.
Included:
- A dependency-free Python 3.10+ CLI and explicit checker protocol.
- Repeated baseline, candidate and final confirmation; execution and check-count limits.
- Namespace-preserving byte edits, common range-marker guards and overwrite protection.
- MIT license, synthetic examples, documentation and contribution guidance.
Validation: 40 automated tests passed on Windows and Linux with Python 3.10 and 3.13. A fresh local wheel installation also passed the suite and demo. Repacking preserved part payloads, Mammoth HTML and warnings across 10 upstream MarkItDown DOCX fixtures.
This is an alpha with a focused scope: whole top-level body blocks, UTF-8/ASCII main XML and standard DOCX package locations. Supporting package parts remain present. Reduction is not anonymization or a guarantee of identical rendering; review files before sharing them. There is no PyPI release yet.
Install the tagged source:
python -m pip install "git+https://github.com/capt1nedev/docx-repro.git@v0.1.0"See the repository README for the checker contract and runnable demo. SHA256SUMS covers the downloadable wheel and source distribution.