rightkit-docs 0.1.1

Product-neutral DOCX, XLSX and PDF read and write: format detection from content, typed reads with caps, typed write ops through an atomic writer, honest loss receipts, hardened against hostile files
Documentation
[package]
name = "rightkit-docs"
version = "0.1.1"
edition = "2021"
rust-version = "1.98.0"
license = "MIT OR Apache-2.0"
description = "Product-neutral DOCX, XLSX and PDF read and write: format detection from content, typed reads with caps, typed write ops through an atomic writer, honest loss receipts, hardened against hostile files"
readme = "README.md"
repository = "https://github.com/bogusyogi/rightkit"
keywords = ["docx", "xlsx", "pdf", "office", "document"]
categories = ["parser-implementations", "filesystem"]
include = [
  "src/**",
  "tests/**",
  "BAKEOFF.md",
  "Cargo.toml",
  "README.md",
  "CHANGELOG.md",
  "LICENSE-MIT",
  "LICENSE-APACHE",
]

[dependencies]
# PDF read and edit are rightkit-pdf's; this crate is the one-shot facade over it.
rightkit-pdf = { version = "0.3.2", path = "../rightkit-pdf", default-features = false, features = ["edit", "merge", "extract"] }
lopdf = { version = "0.45.0", default-features = false, features = ["rayon"] }
# The one writer behind every write (temp sibling, flush, rename, directory sync).
rightkit-fs = { version = "0.4.0", path = "../rightkit-fs", default-features = false, features = ["fs"] }
# XLSX read (typed cells, cached formula results) and XLSX create. Both pull zip 8.x.
calamine = "0.36.1"
rust_xlsxwriter = "0.99.1"
# Package layer and in-place part edits. Same zip line as calamine and rust_xlsxwriter so one copy links.
zip = { version = "9", default-features = false, features = ["deflate"] }
# The in-house walker's own copy. calamine 0.36.1 still pulls quick-xml 0.41 for its reads, so
# two copies link until calamine moves to 0.42.
quick-xml = "0.42.0"
serde = { version = "1.0.229", features = ["derive"] }
thiserror = "2.0.21"
sha2 = "0.11.1"

[dev-dependencies]
serde_json = "1.0.154"
# Fault seam around the replace call (debug and test builds only).
rightkit-fs = { version = "0.4.0", path = "../rightkit-fs", default-features = false, features = ["fs", "testing"] }

[package.metadata.rightkit]
continuous = false
continuous_reason = "pure computation bounded per call: parse or rewrite one caller-supplied file under explicit size, entry, ratio and cell caps; no thread-spawn, task-spawn, sleep, timer, listener or watcher in non-test src; the only process-wide state is rightkit-pdf's shared font catalog, built once on first PDF text replace or add"