mirror of
https://github.com/storytold/pdfcraft.git
synced 2026-10-14 11:17:10 -04:00
Adopt the canonical craft-print revision from craft-libs #28 so Windows printing uses the in-process Windows.Data.Pdf/XPS backend instead of PowerShell. Keep exact paper, orientation and scaling validation and the existing PDFCraft composition and permission checks. Pin the reviewed winprint fork, scope its compile-time licence/advisory exceptions, and distinguish the earlier WDAC Sandbox exercise from the final pinned revision's Windows CI coverage. Physical printer output remains unverified. Add worker-barrier regressions for Home-selected tool handoff and startup document ordering. Fixes #1107 Co-authored-by: durtyrobbin <[email protected]> Co-authored-by: Dimitar Klaturov <[email protected]> Co-Authored-By: Claude Opus 5.5 <[email protected]> Co-authored-by: skylar taylor-barrick <[email protected]>
66 lines
2.5 KiB
TOML
66 lines
2.5 KiB
TOML
# cargo-deny policy (M0.4). Run with `cargo xtask deny`; part of `cargo xtask ci`.
|
|
# Code dependencies follow the same rule as assets (AGENTS.md): permissive licences only.
|
|
# Copyleft (GPL, AGPL, LGPL) is never linked; such tools run only as external oracle processes.
|
|
|
|
[graph]
|
|
all-features = true
|
|
|
|
[licenses]
|
|
confidence-threshold = 0.9
|
|
allow = [
|
|
"MIT",
|
|
"MIT-0",
|
|
"Apache-2.0",
|
|
"Apache-2.0 WITH LLVM-exception",
|
|
"BSD-2-Clause",
|
|
"BSD-3-Clause",
|
|
"ISC",
|
|
"Zlib",
|
|
"Unicode-3.0",
|
|
"BSL-1.0",
|
|
"CC0-1.0",
|
|
]
|
|
|
|
[licenses.private]
|
|
ignore = true
|
|
|
|
[bans]
|
|
multiple-versions = "allow"
|
|
wildcards = "deny"
|
|
allow-wildcard-paths = true
|
|
|
|
[sources]
|
|
unknown-registry = "deny"
|
|
unknown-git = "deny"
|
|
# Shared UI components and spooler; Cargo.toml pins the immutable revision. craft-print pins
|
|
# storytold's winprint fork (Windows printing, #1107) to an immutable revision of its own.
|
|
allow-git = ["https://github.com/storytold/craft-libs", "https://github.com/storytold/winprint.rs"]
|
|
|
|
[advisories]
|
|
yanked = "warn"
|
|
ignore = [
|
|
# Marvin (RSA private-key timing side channel, no fixed `rsa` release). pdfcraft-sign uses
|
|
# `rsa` only for public-key signature verification, which the advisory does not affect; RSA
|
|
# private-key operations use aws-lc-rs on native targets and are refused in the browser
|
|
# (ADR-0009). Revisit when a fixed `rsa` ships.
|
|
{ id = "RUSTSEC-2023-0071", reason = "rsa is used for verification only (ADR-0009)" },
|
|
# proc-macro-error is unmaintained (no vulnerability). It reaches the tree as a proc macro of
|
|
# winprint's fmt-derive (craft-print's Windows spooler), so it runs at compile time on Windows
|
|
# and is not in the binary.
|
|
{ id = "RUSTSEC-2024-0370", reason = "compile-time proc macro of winprint's fmt-derive (craft-print Windows printing, #1107)" },
|
|
]
|
|
|
|
# egui's default UI fonts (Ubuntu-Light, Hack, emoji-icon-font): font licences on the AGENTS.md
|
|
# §1.2 allowlist, attributed in ATTRIBUTION.toml as dependency-bundled assets.
|
|
[[licenses.exceptions]]
|
|
crate = "epaint_default_fonts"
|
|
allow = ["OFL-1.1", "Ubuntu-font-1.0"]
|
|
|
|
# winprint (craft-print's Windows spooler, #1107) lists reqwest as a build-dependency for its
|
|
# PDFium download, which only runs with its `pdfium` feature; craft-print turns that off. The CA
|
|
# bundle reqwest brings is CDLA-Permissive-2.0 data and is compiled into winprint's build script
|
|
# only, never into PdfCraft. Remove when winprint makes those build-dependencies optional.
|
|
[[licenses.exceptions]]
|
|
crate = "webpki-root-certs"
|
|
allow = ["CDLA-Permissive-2.0"]
|