Skip to content

Commit 18fe625

Browse files
h4x0rclaude
andcommitted
release: lzo 0.1.1
Documentation, validation, and metadata only — no API or behaviour change. Adds differential validation vs rust-lzo, docs/validation.md, real-content regression vectors, and safety-first positioning. CHANGELOG added. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 20717d6 commit 18fe625

2 files changed

Lines changed: 38 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Changelog
2+
3+
All notable changes to this project are documented here. The format is based on
4+
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres
5+
to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6+
7+
## [0.1.1] — 2026-06-07
8+
9+
No API or behaviour changes — `0.1.1` is documentation, validation, and metadata.
10+
11+
### Added
12+
13+
- **Differential validation against `rust-lzo`** — an independent decoder
14+
converted from Linux's `lzo1x_decompress_safe`, used as a local oracle (never a
15+
dependency). Identical output on the full real corpus and across 3,000,000
16+
mutation-fuzz inputs with zero divergence and no panics. Harness:
17+
`validation/lzodiff`.
18+
- **`docs/validation.md`** documenting the full methodology — reference-encoder
19+
round-trips, a 32.4 MB real-world corpus, the differential check, fuzzing, and
20+
coverage — with scope limits stated plainly. Real-content regression vectors
21+
(`lzo1x_999`) added to the committed test set.
22+
23+
### Changed
24+
25+
- Documentation and positioning now lead with the real differentiator — safety
26+
against malicious, crafted, or corrupted input (`#![forbid(unsafe_code)]`,
27+
fuzz-hardened, typed errors, cross-validated) — rather than licence contrast.
28+
29+
## [0.1.0] — 2026-06-06
30+
31+
### Added
32+
33+
- Initial release: a safe, `no_std`, zero-dependency pure-Rust **LZO1X
34+
decompressor**. `decompress_into` (core, allocation-free) and an allocating
35+
`decompress` behind the `alloc` feature. Decodes `lzo1x_1` / `lzo1x_1_15` /
36+
`lzo1x_999` streams (they share one decompressor), `#![forbid(unsafe_code)]`,
37+
validated round-trip against reference liblzo2 vectors, and fuzz-hardened.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "lzo"
3-
version = "0.1.0"
3+
version = "0.1.1"
44
edition = "2021"
55
rust-version = "1.85"
66
description = "Safe, dependency-free, no_std pure-Rust LZO1X decompressor — bounds-checked and fuzz-hardened for reading untrusted lzo1x_1 / lzo1x_999 streams."

0 commit comments

Comments
 (0)