Skip to content

v2.0.0 — installable PyPI package

Latest

Choose a tag to compare

@petehottelet petehottelet released this 20 Jun 08:04
· 4 commits to main since this release

pdf-fax-optimizer 2.0.0

First release as a proper, pip-installable package — alongside the existing agent skill.

pip install pdf-fax-optimizer
pdf-fax-optimizer input.pdf -o output.fax.pdf

Highlights

  • Installable CLI package. New pyproject.toml (hatchling) with console scripts pdf-fax-optimizer and pdf-fax-send, optional extras [ocr] / [send] / [all] / [dev], and bundled halftone assets shipped in the wheel.
  • One source tree, two distributions. Code now lives in an importable pdf_fax_optimizer package nested in the skill folder; thin shims keep python scripts/*.py and existing skill installs working.
  • Mixed-page DPI fix. A low-DPI embedded raster no longer drags down live vector text on the same page — the preset now acts as a floor for text-bearing pages. The JSON report records chosen_dpi and chosen_dpi_reason for auditability.
  • Safer check_deps. Detect-only by default; auto-install is gated behind --auto-install, and --break-system-packages is a separate explicit opt-in.
  • Tests + CI. New pytest suite over synthetic fixtures (smoke, pipeline, report, CLI, conversion, send, and a mixed-DPI regression guard) running on Python 3.10/3.11/3.12 with ruff, plus automated PyPI publishing via Trusted Publishing.

Docs

  • pip-first install + Development sections in the README, python -m pdf_fax_optimizer.* entry points in SKILL.md, recover_text clarified as opt-in, and the square vs. anisotropic rendering history reorganized into a Background note.