D-61 (Q-9): the writer sheds the typesetter and the crate map is layered again. The PDF/XLSX reader (extract.rs, plan P6) is now the plain library crate ledger-reader, moved whole with git mv and no behavior change. ledger-store depends on it instead of ledger-import, so the store no longer builds Typst or the fonts; ledger-import re-exports it as ledger_import::extract so gui, mcp, host and the fuzz targets compile unchanged, and still never depends on the store. New crate carries only the dependencies extract.rs imports (hayro, hayro-interpret, kurbo, zip, quick-xml, thiserror); fuzz/Cargo.lock gains the new package. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HS8WZziDnyxunC23MUxrLp
22 lines
803 B
TOML
22 lines
803 B
TOML
[workspace]
|
|
resolver = "2"
|
|
members = ["crates/ledger-core", "crates/ledger-store", "crates/ledger-config", "crates/ledger-mcp", "crates/ledger-import", "crates/ledger-reader", "crates/ledger-cli", "crates/ledger-gui", "crates/ledger-vault", "crates/ledger-host", "crates/ledger-package"]
|
|
|
|
[workspace.package]
|
|
edition = "2024"
|
|
license = "MIT OR Apache-2.0"
|
|
repository = "https://git.swaits.com/swaits/wanderbooks"
|
|
|
|
[workspace.lints.rust]
|
|
missing_docs = "warn"
|
|
# `cargo kani` sets cfg(kani) for the proof harnesses.
|
|
unexpected_cfgs = { level = "warn", check-cfg = ["cfg(kani)"] }
|
|
|
|
# Argon2id at the plan's 64 MiB, three passes, takes seconds unoptimized:
|
|
# its crates are built optimized in debug and test builds too.
|
|
[profile.dev.package.argon2]
|
|
opt-level = 3
|
|
|
|
[profile.dev.package.blake2]
|
|
opt-level = 3
|