← Home

unpdf

PDF extraction and rendering across all JavaScript runtimes

47
Versions
MIT
License
No
Install Scripts
Verified
Provenance

Supply chain provenance

Status for the latest visible version.

SLSA provenance attestation npm registry signatures gitHead linked

Maintainers

johannschopplich

Keywords

cloudflareedgeextractparsepdfpdf.jspdfjs-distrenderingserverlesstext-extractionworkers

Accepted risks

Findings the reviewer chose to accept rather than block on.

SourceRuleReasonAccepted byWhen
vendored-integrity tampered-vendored-dep:dist AI (vendored-integrity): Diffs confined to .d.ts type files from pdfjs-dist types copy step, not executable payload. ai
publish-pattern new-deps-added AI (publish-pattern): canvas added as optional dependency for legitimate PDF rendering use case; not a supply-chain attack vector. ai
dependencies unvetted-dep:canvas AI (dependencies): canvas is an established graphics library; optional dependency for PDF rendering is appropriate for this package. ai
source-diff net-exec-file:dist/pdfjs.mjs AI (source-diff): pdfjs-dist legitimately uses dynamic code patterns for PDF parsing; no malware indicators (credential theft, exfiltration, reverse shells) present. ai
source-diff obfuscated-file:dist/pdfjs.mjs AI (source-diff): dist/pdfjs.mjs is a minified build artifact from rollup bundling pdfjs-dist; minification is expected for build outputs. ai
source-diff large-new-source-files AI (source-diff): 64 new files reflect bundling of pdfjs-dist library; expected for PDF utility package. ai
source-diff source-size-tripled AI (source-diff): 83x size increase reflects pdfjs-dist bundling; documented in build:pdfjs script and appropriate for this package's purpose. ai
provenance publisher-changed AI (provenance): unpdf migrated to GitHub Actions CI/CD publishing with SLSA Sigstore attestation; publisher=GitHub Actions is the expected and legitimate state for this unjs org package going forward. ai
source-diff encoded-string-file:dist/pdfjs.mjs AI (source-diff): Long encoded strings in dist/pdfjs.mjs are standard minified pdfjs-dist bundle output (PDF constants, enums, polyfills). No obfuscation or malicious content; stable for this package. ai

Versions (showing 47 of 47)

Version Deps Published
1.8.0 0 / 12
1.7.0 0 / 16
1.6.2 0 / 16
1.6.1 0 / 16
1.6.0 0 / 16
1.5.1 0 / 16
1.5.0 0 / 16
1.4.0 0 / 18
1.3.2 0 / 18
1.3.1 0 / 18
1.3.0 0 / 18
1.2.2 0 / 18
1.2.1 0 / 18
1.2.0 0 / 18
1.1.0 0 / 18
1.0.6 0 / 18
1.0.5 0 / 18
1.0.4 0 / 18
1.0.3 0 / 18
1.0.2 0 / 20
1.0.1 0 / 21
1.0.0 0 / 21
0.12.2 0 / 19
0.12.1 0 / 19
0.12.0 0 / 20
0.11.0 0 / 20
0.10.1 0 / 19
0.10.0 0 / 19
0.9.0 0 / 19
0.8.0 0 / 19
0.7.1 1 / 19
0.7.0 1 / 19
0.6.1 0 / 19
0.6.0 0 / 19
0.5.4 0 / 8
0.5.3 0 / 8
0.5.2 0 / 8
0.5.1 0 / 8
0.5.0 0 / 8
0.4.1 0 / 8
0.4.0 0 / 6
0.3.0 0 / 6
0.2.2 0 / 6
0.2.1 0 / 6
0.2.0 0 / 6
0.1.1 0 / 6
0.1.0 0 / 6

v1.8.0

2 findings
HIGH Modified vendored dependency: dist (21 file(s)) vendored-integrity

The directory `dist` byte-matched 126 of 154 file(s) against [email protected] — a version that passed review and that we hold in storage — which identifies it as a vendored copy of that package. But 21 file(s) inside it differ from that package's bytes at the same path: dist/types/src/display/annotation_layer.d.ts, dist/types/src/display/text_layer.d.ts, dist/types/src/display/xfa_layer.d.ts, dist/types/src/display/xfa_text.d.ts, dist/types/src/pdf.d.ts, dist/types/web/annotation_editor_layer_builder.d.ts, dist/types/web/annotation_layer_builder.d.ts, dist/types/web/pdf_find_controller.d.ts, dist/types/web/pdf_history.d.ts, dist/types/web/pdf_link_service.d.ts, dist/types/web/pdf_page_view.d.ts, dist/types/web/pdf_rendering_queue.d.ts, dist/types/web/pdf_scripting_manager.d.ts, dist/types/web/pdf_thumbnail_view.d.ts, dist/types/web/pdf_thumbnail_viewer.d.ts, dist/types/web/pdf_viewer.d.ts, dist/types/web/renderable_view.d.ts, dist/types/web/struct_tree_layer_builder.d.ts, dist/types/web/text_highlighter.d.ts, dist/types/web/text_layer_builder.d.ts (+1 more). A vendored library that is a faithful copy except for a handful of altered files is a well-worn supply-chain shape — the surrounding real code lends the tree legitimacy while the altered files carry the payload. These files are NOT exempt from any authorship heuristic; diff them against [email protected] before greenflagging.

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.7.0

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.