Releases: winfunc/titor
Releases · winfunc/titor
v0.2.0
v0.1.2 - Line-Level Diffs
What's New
Features
- feat(diff): Add line-level diff functionality with unified format output
- Git-like unified diff format showing exactly what changed between checkpoints
- Line-by-line comparison with context lines
- Support for ignoring whitespace changes
- Configurable context lines and file size limits
- Binary file detection and handling
Improvements
- chore: Replace hardcoded version strings in tests with env!("CARGO_PKG_VERSION")
- docs: Update version strings in examples and documentation
API Additions
- Added
diff_file()method for line-level comparison of individual files - Added
diff_detailed()method for complete checkpoint diffs with line-level changes - New
DiffOptionsstruct for configuring diff behavior - New
FileDiff,DiffHunk, andLineChangetypes for diff results
v0.1.1 - Documentation and Compatibility Improvements
What's Changed
Improvements
- refactor: Make gxhash optional for docs.rs compatibility
- docs: Improve CPU intrinsics compatibility explanation in collections module
Technical Details
- Added gxhash as an optional feature to ensure docs.rs builds successfully
- Enhanced documentation for better clarity on CPU intrinsics requirements
v0.1.0 - Initial Release
Initial Release
Features
- Incremental Snapshots: Only changed files are stored between checkpoints
- Content-Addressable Storage: Automatic deduplication using SHA-256 hashing
- LZ4 Compression: Extreme-speed compression with adaptive strategies
- Parallel Processing: Multi-threaded file scanning leveraging all CPU cores
- Merkle Tree Verification: Cryptographic integrity checking for tamper detection
- Timeline Branching: Git-like branching model supporting multiple timelines
- Atomic Operations: All checkpoint and restore operations are atomic
- Memory Efficient: Streaming architecture for large files
- Line-Level Diffs: Git-like unified diff output
Technical Specifications
- Compression: LZ4 via lz4_flex crate with 4+ GB/s decompression speeds
- Hashing: SHA-256 for content identification and verification
- Serialization: Bincode for efficient binary storage
- Concurrency: Rayon-based parallel processing
- Storage: Sharded object storage with reference counting