All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.0.1 - 2025-01-08
- Fixed
no_stdbuild by adding properallocimports to all modules - Fixed error handling in
no_stdmode by conditionally compilingUnsignedVarintDecodeerror variant - Removed unused imports identified by clippy
- Improved code quality with clippy pedantic lints
- Enhanced code readability by adding numeric literal separators (e.g.,
100_000instead of100000) - Improved documentation formatting with proper backticks for code items
- Updated bool assertions from
assert_eq!(val, true)toassert!(val)for better idiomatic code - Optimized loop patterns from indexing to iterators where applicable
- Enhanced documentation with better formatting
- Added comprehensive error handling examples
- Improved module-level documentation across all traits
- Verified all documentation links work correctly
1.0.0 - 2025-01-06
- Initial stable release
- Core encoding traits:
EncodeInto,EncodeIntoBuffer,EncodeIntoArray - Core decoding trait:
TryDecodeFrom - Null value traits:
NullandTryNull - Validated newtype:
EncodedBytesfor type-safe varint-encoded byte sequences - Comprehensive error handling with
Errorenum - Full
no_stdsupport withalloc - Thread-safe implementations (Send + Sync)
- Extensive test suite with 105 tests including:
- Unit tests for all traits
- Property-based tests with proptest
- Security tests for malicious input handling
- Concurrency tests for multi-threaded usage
- Round-trip encoding/decoding tests
- Zero-copy decoding with slice references
- Zero-allocation buffer encoding
- Stack-only encoding for embedded systems
- Single-allocation encoding for heap operations
- Optimized varint format for space efficiency
- Comprehensive module and trait documentation
- Usage examples for all public APIs
- Performance characteristics documentation
- Thread safety guarantees documented
- Security considerations documented