Releases: Lunyn-HFT/lunary
Releases · Lunyn-HFT/lunary
Release list
Lunary v0.2.5
New Features
- Enhanced ChunkedMmapParser with message-aligned chunking for improved parsing efficiency
- Added support for testing multiple Rust toolchains
Bug Fixes
- Improved buffer overflow handling in Parser using try_reserve with error handling
Performance Improvements
- Optimized vector pre-allocation in ZeroCopyParser and ZeroCopyBatchProcessor using fast message counting
- Added read_u64_checked for safer unchecked reads in SIMD utilities
Refactors and Other Changes
- Updated safety comments and added debug assertions in SIMD functions
- Minor logic adjustments in batch message validation
Lunary v0.2.4
New Features
- Added parser shutdown handling and message count estimation
- Implemented validation in parsers and concurrent components
- Added unchecked read methods
- Added support for Direct Listing (O) messages
- Implemented message type validation in ZeroCopyParser
- Added input availability tracking to SpscParser
Bug Fixes
- Fixed skipping of consecutive invalid bytes and file size validation
- Prevented integer overflow in ZeroCopyParser
- Replaced swap_bytes with to_be for correctness
- Prevented data loss in compact_buffer
Performance Improvements
- Enhanced memcpy_nontemporal with alignment check
- Cached SIMD level at startup for better performance
Refactors and Other Changes
- Replaced atomic status with OnceLock
- Removed manual padding
- Implemented safe pointer arithmetic in zerocopy_types
- Added Default derive for ParserBuilder
- Replaced manual byte search with memchr
- Reordered tempfile dependency
- Improved error handling in SpscParser, ParallelParser, and WorkStealingParser
- Removed duplicated WorkUnit slice extraction
- Simplified work unit handling
- Removed UTF-8 validation in hot path
Lunary v0.2.3
Release v0.2.3
Features
- Added ArcOwnedMessage struct and methods for arc-based parsing
- Added MmapParserShared and support for owned message parsing
- Changed SpscParser to crossbeam-channel and added fuzzing tests
- Improved worker thread management and benchmark result format
- Added unchecked read and safe try_read methods
- Added memchr for optimized string parsing
- Enhanced edit parsing with iterators, parking, and SIMD
Refactors
- Replaced unsafe data access with safe indexing
- Replaced unsafe read functions with safe implementations
- Improved tests for consistency
- Replaced Cell with AtomicUsize in SpscQueue
- Exported LuldAuctionCollarMessage and LuldAuctionCollarRef
Fixes
- Fixed error handling in CLI arg parsing and thread joins
- Fixed error handling for CLI args
Enhancements
- Added fuzz testing with validation checks
Lunary v0.2.2 release
Enhancements
- CLI argument parsing and output formatting
- Zerocopy support with MessageHeaderRaw struct and ZeroCopyMessage
- Parser builder with mmap support
- Error handling for stock and mpid parsing, tests for UTF-8
Refactors
- Update edition to 2024
- Extract common header parsing into a macro
- Macro to simplify message dispatching
- Update SIMD code to use safe arch intrinsics
- Split benchmark into separate modules
- SpscParser to use WorkUnit for chunk submission
Chores
- Update dependencies