Skip to content

Releases: firecrawl/pdfium-rs

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 11 Aug 01:38

Initial release.

Added

  • Runtime loading of PDFium via libloading with a documented discovery
    chain (PDFIUM_LIB_PATH, executable directory, target/pdfium, system
    loader), explicit-path loading, and eager symbol resolution — an
    incompatible library fails at load time with
    LoadError::MissingSymbol.
  • Process-wide singleton with every FFI call serialized through one
    global mutex; all handle types are Send + Sync.
  • Document loading from memory or file with typed errors for encrypted
    (PasswordRequired / IncorrectPassword / UnsupportedSecurity) and
    malformed (InvalidPdf) input; metadata, permissions, PDF version,
    security handler revision, page labels, and cheap per-page size
    queries.
  • Page rendering to owned pixel buffers: scale / DPI / width / height /
    fit / exact sizing, Bgra8 / Rgba8 / Bgr8 / Gray8 formats,
    background colors, extra rotation, annotation and form-field layers,
    anti-aliasing toggles, and a pre-allocation output-size ceiling
    (RenderConfig::max_output_bytes, default 1 GiB, enforced via
    Error::RenderTooLarge).
  • Pixel/page coordinate mapping: every render carries a PageTransform
    (points and rects, both directions) derived from PDFium's own
    device-to-page mapping; PdfPage::transform_for computes it without
    rendering.
  • Text extraction with per-character geometry (unicode, tight and loose
    bounds, baseline origin).
  • AcroForm field appearance rendering via an owned form-fill environment.
  • Public sys module exposing the raw function table, gated by the
    documented ffi_lock serialization contract.
  • Binary acquisition tooling: pdfium.lock.json pin
    (chromium/7988, PDFium 153.0.7988.0) with sha256 verification,
    cargo xtask fetch-pdfium, and cargo xtask repackage for the
    native-v* release archives.

PDFium native binaries native-v7988

Choose a tag to compare

@github-actions github-actions released this 11 Aug 01:40

Repackaged, checksum-verified PDFium native binaries for firecrawl-pdfium.

Release tag native-v7988
PDFium version 153.0.7988.0
Upstream release chromium/7988

Each archive contains the upstream build verbatim (lib/, include/,
licenses/, LICENSE, VERSION, args.gn) plus PROVENANCE.json
recording the upstream asset and sha256 it was repackaged from.

Release asset sizes

Bytes Asset
3620096 firecrawl-pdfium-linux-arm64.tgz
3676776 firecrawl-pdfium-linux-x64.tgz
3460583 firecrawl-pdfium-mac-arm64.tgz
3620185 firecrawl-pdfium-mac-x64.tgz
3764191 firecrawl-pdfium-win-x64.tgz

Upstream archive sha256s (from pdfium.lock.json, verified at repackage time)

Platform Upstream asset sha256
mac-arm64 pdfium-mac-arm64.tgz 2229b8a6ffa0fb1634aa78886ed5425a10a8a0bd01762f7f0c9244081d86a921
mac-x64 pdfium-mac-x64.tgz 172d9b7b0fa805235c785be333c046ff95c4aa38b3538ddc2d9d21ecc99681ca
linux-x64 pdfium-linux-x64.tgz 7358c15e26a746cd67854887ea11b3b807c436056788eee9294fb972b8f8e0be
linux-arm64 pdfium-linux-arm64.tgz a2926203456881efa8feca7e0e409de78a4471b9b72e62a74c820faebb3e4551
win-x64 pdfium-win-x64.tgz 654daf488d9357d2787cec439d0dbdb93d7e180e2cb28e5f1d41c66d2645daec

Verify what you download

# 1. Checksums (SHA256SUMS is itself an asset of this release):
shasum -a 256 -c SHA256SUMS --ignore-missing

# 2. Build provenance (proves the asset was built by this repository's
#    release workflow from this tag):
gh attestation verify firecrawl-pdfium-<platform>.tgz --repo firecrawl/pdfium-rs