rtflite
Lightweight RTF composer for Python. Specializes in precise formatting of production-quality tables and figures.
rtflite stopped being an RTF writer and became the conversion layer for clinical table output.
◆Recent moves
- 4mo ago
Multi-section body typing tightened; pandas dropped from dev deps
Maintenance across three fronts: `rtf_body` gets a proper union type with a validator so single-section documents fail loudly on multi-body input instead of erroring downstream, and pandas and pyarrow leave the development dependencies. Internal work with no change to what the package produces.
View source ↗ - 7mo ago
API reference renders Pydantic field metadata
Documentation-only release — mkdocstrings now renders Pydantic field metadata via griffe-pydantic, a private attribute declaration fixes a static-mode render error, and a Code Wiki link joins the README. No functional change.
View source ↗ - 7mo ago
Documentation site migrated to Zensical
A documentation site migration and nothing else. Part of the infrastructure cleanup that has occupied the releases since the export work finished.
View source ↗ - 7mo ago
Snapshot tests moved to pytest-r-snapshot
Test infrastructure work — RTF snapshot tests migrate to `pytest-r-snapshot` with fixtures under the standard `tests/__r_snapshots__/` location, retiring the bespoke fixture generation workflow. Invisible to users, but snapshot fidelity is how this package proves its RTF output has not drifted.
View source ↗ - 7mo ago
HTML and PDF export complete the output matrix
⚡ SPARKThe release that finishes the month-long conversion push started by `write_docx`: RTF tables can now be emitted as HTML and PDF through the same LibreOffice path. It changes what rtflite is for — output formats consumers actually read, not just the intermediate format a submission toolchain expects.
View source ↗ - 7mo ago
LibreOffice conversion becomes an injectable converter object
Breaking change with a clear rationale: `executable_path` leaves `write_docx()` in favour of passing a configured `LibreOfficeConverter` instance, which can then be reused across many conversions. Restructuring done a release before HTML and PDF arrived — the converter had to become an object before three formats could share it.
View source ↗