Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
Download tar.gz
- Remove unused _char_table (was reserved for future lookup optimization)
- Remove unused _max_block_size constant
- Remove unused _copy_8_bytes helper function
- Simplify is_valid_compressed using Option.is_some
- Simplify decompress_stream_is_complete using direct comparison
No functional changes - all 62 tests still pass.
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create symlink to vendor/git/snappy-c/testdata for corpus tests
- Document framing format compliance (reserved chunk handling, concatenation)
- Add note about testdata setup in STATUS.md
- All 62 tests now pass including corpus tests
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Key improvements:
- 8-byte match length comparison using XOR + count-trailing-zeros
- Skip-bytes heuristic for incompressible data (21x speedup on random data)
- Pattern extension optimization for small offset copies in decompression
- Reusable compression context (compress_ctx) for 5x speedup on many small messages
- Lookup table preparation for future decompression optimization
Performance improvements:
- Random data compression: 66 MB/s -> 970 MB/s (14x faster)
- HTML decompression: 98 MB/s -> 116 MB/s (1.2x faster)
- URLs decompression: 150 MB/s -> 163 MB/s (1.1x faster)
- Many small messages with context: 18 MB/s -> 100 MB/s (5.3x faster)
New API:
- create_compress_ctx() - create reusable compression context
- compress_with_ctx - compress using reusable context
All 62 tests pass. Compression ratios unchanged.
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>