60 lines
3.2 KiB
Markdown
60 lines
3.2 KiB
Markdown
# Changelog
|
|
|
|
## 0.2.1 - 2026-07-22
|
|
|
|
- Preserve the intrinsic aspect ratio of embedded images when their recorded
|
|
display width is reduced to fit the reader, including linked images.
|
|
- Allow the page reader to scroll when its Toolbox grid area is constrained.
|
|
|
|
## 0.2.0 - 2026-07-22
|
|
|
|
- Open unfragmented FSSHTTPB package-store `.one` sections through the same
|
|
bounded page/content model as desktop revision stores.
|
|
- Interpret desktop and FSSHTTPB `.onetoc2` stores into authored section-group,
|
|
section, page, and subpage trees, with identity fallback and deterministic
|
|
handling of missing, duplicate, cyclic, and unlisted entries.
|
|
- Add complete-set CAB extraction for multi-cabinet packages, including split
|
|
CFDATA blocks, spanning files, codec continuity, link validation, aggregate
|
|
limits, and browser selection of one `.onepkg` plus its `.cab` companions.
|
|
- Add native MSZIP and Quantum decoding alongside uncompressed and LZX CAB
|
|
support.
|
|
- Parse and render structured outlines, rich-text formatting and safe links,
|
|
tables, signature/header-validated PNG/JPEG images, decoded ink, layout hints,
|
|
and declared embedded attachments.
|
|
- Add local structured JSON, text, Markdown, inert HTML, and deterministic
|
|
static notebook ZIP exports with diagnostics, unsupported-content summaries,
|
|
normalized resource names, and bounded output.
|
|
- Add independent parser, image-preview, display, TOC, cabinet-set, and export
|
|
resource budgets. Oversized images remain explicitly downloadable but are
|
|
not copied or decoded for automatic preview.
|
|
- Verify the implementation against the redistributable OneNote golden corpus,
|
|
a licensed five-part libmspack fixture, adversarial malformed inputs, and two
|
|
private `.onepkg` files without committing their bytes.
|
|
|
|
Known unsupported areas remain fragmented FSSHTTPB data-element reconstruction,
|
|
equations, audio/video, pixel-perfect page placement, and untested OneNote
|
|
producer variants.
|
|
|
|
## 0.1.0 - 2026-07-22
|
|
|
|
- Add a standalone React/Vite reader integrated with Toolbox SDK 0.1.1,
|
|
including `AppShell`, the Toolbox manifest, nested-path-safe assets, and the
|
|
Portal release contract.
|
|
- Add a worker-hosted native TypeScript parser for a desktop OneNote
|
|
revision-store subset: bounded file-node and object-space traversal,
|
|
property sets, page metadata, titles, timestamps, levels, and plain text.
|
|
- Add in-memory CAB enumeration and extraction for uncompressed and LZX
|
|
folders, including checksums, strict paths, explicit resource limits, and
|
|
cooperative cancellation between data blocks.
|
|
- Open contained `.one` sections independently and expose package entries,
|
|
section/page navigation, partial failures, and structured diagnostics.
|
|
- Verify a Joplin `.one` golden with three pages and a Joplin LZX `0x1203`
|
|
`.onepkg` golden with seven entries, five sections, and seven pages. Also
|
|
verify rust-cab uncompressed and LZX `0x1303` fixtures.
|
|
- Add deterministic static release packaging, SHA-256 sidecars, pinned-source
|
|
provenance, fixture licensing, and security/support documentation.
|
|
|
|
Known unsupported areas are FSSHTTP-packaged `.one`, MSZIP and Quantum CAB
|
|
extraction, multi-cabinet archives, `.onetoc2` hierarchy/order interpretation,
|
|
visual content, attachments, layout/format fidelity, links, and exports.
|