feat: add bounded MSZIP cabinet extraction
This commit is contained in:
21
README.md
21
README.md
@@ -14,25 +14,28 @@ and is delivered to Toolbox Portal as an already-built, checksummed static ZIP.
|
||||
- Desktop revision-store `.one` sections from the tested OneNote family. The
|
||||
reader exposes section/page names, stable page IDs, created and updated
|
||||
timestamps when present, page level, and readable plain text.
|
||||
- Single-cabinet `.onepkg` files whose CAB folders are uncompressed or LZX
|
||||
compressed. Each contained desktop `.one` section is parsed independently,
|
||||
so one unsupported section does not hide sections that did parse.
|
||||
- Single-cabinet `.onepkg` files whose CAB folders are uncompressed, MSZIP, or
|
||||
LZX compressed. Each contained desktop `.one` section is parsed
|
||||
independently, so one unsupported section does not hide sections that did
|
||||
parse.
|
||||
- Package entries, safe normalized paths, uncompressed sizes, compression
|
||||
metadata, section/page navigation, and structured diagnostics.
|
||||
|
||||
The golden tests parse a real Joplin desktop `.one` file with three pages and a
|
||||
real Joplin `.onepkg` with seven entries, five sections, and seven pages. LZX
|
||||
`0x1203` and `0x1303` data and an uncompressed CAB are covered by fixtures.
|
||||
`0x1203` and `0x1303`, uncompressed CAB, and one- and two-block MSZIP data are
|
||||
covered by fixtures. The MSZIP fixtures are CAB-level evidence, not a claim
|
||||
about a particular OneNote `.onepkg` producer.
|
||||
|
||||
This is a structural reader, not a full-fidelity OneNote renderer. Images,
|
||||
tables, ink, embedded files, layout, formatting, links, and exports are not
|
||||
rendered. FSSHTTP-packaged `.one`, MSZIP and Quantum CAB extraction,
|
||||
multi-cabinet archives, and `.onetoc2` hierarchy/order interpretation are not
|
||||
supported. See [format support](docs/FORMAT_SUPPORT.md) for the precise matrix.
|
||||
rendered. FSSHTTP-packaged `.one`, Quantum CAB extraction, multi-cabinet
|
||||
archives, and `.onetoc2` hierarchy/order interpretation are not supported. See
|
||||
[format support](docs/FORMAT_SUPPORT.md) for the precise matrix.
|
||||
|
||||
There is no Rust/Wasm runtime, server, proxy, upload, telemetry, or notebook
|
||||
storage. All parsing and CAB/LZX decompression are ordinary browser JavaScript
|
||||
produced from the TypeScript source.
|
||||
storage. All parsing and CAB/LZX/MSZIP decompression is ordinary browser
|
||||
JavaScript produced from the TypeScript source.
|
||||
|
||||
## Use
|
||||
|
||||
|
||||
Reference in New Issue
Block a user