Repository navigation
SuniPDF 0.93.0
·
13 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
SuniPDF 0.93.0
By Emanuel de Almeida.
A robustness release: SuniPDF now fails cleanly, instead of crashing or saving an unreadable file, when it meets damaged, hostile or very large PDFs. There is no new screen or setting.
What changes for you
optimizereopens its result before publishing it. A copy that no longer opens, or changes the page count, is refused and leaves no output file.protect,sanitize,set-metadata,strip-metadataandsignuse the same check and no longer publish copies that cannot be reopened.stamp,page-numbers,headers-footersandimage-watermarkno longer crash on a page whose content cannot be read back; they report a clear error.
Validation added
- A generated corpus of 26 hostile and large PDFs, and 56 PDF-writing commands run on it (1,315 runs).
- Fuzzing targets for PDF structure and signature parsing, plus a mutation smoke test in the test suite. No fuzzing campaign result is claimed yet.
Limits
protect,set-metadataandstrip-metadatarefuse PDFs whose MediaBox uses exponent notation.- Windows packages are unsigned. Windows ARM64 is cross-built without native hardware execution. The macOS app is ad hoc signed, not notarized.
Refs #97, Refs #98. Details: release notes and changelog. Each package has a .sha256 file.