# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
- Comprehensive CI/CD pipeline with GitHub Actions
- Security audit integration with `cargo audit`
- Fuzz testing infrastructure
- Performance benchmarking suite
- MSRV (Minimum Supported Rust Version) specification
### Changed
- Improved build script error handling in `build.rs`
- Enhanced documentation and API completeness
### Fixed
- Build script now provides clear error messages instead of panicking
## [0.1.0] - 2026-01-13
### Added
- Initial release of ClockHash-256 cryptographic hash function
- 256-bit security with preimage and collision resistance
- Domain separation for multi-purpose blockchain use cases
- `no_std` compatibility for embedded environments
- Incremental hashing support for streaming data
- Constant-time operations for side-channel resistance
- SIMD acceleration (AVX2/AVX-512) for performance optimization
- Comprehensive test suite with 128+ test cases
- Property-based testing with proptest
- Security audit completed (see SECURITY_AUDIT_REPORT.md)
- Performance exceeding 2.5 GB/s target on modern hardware
### Features
- `std` - Standard library support (default)
- `no_std` - Embedded/no_std compatibility
- `simd` - SIMD acceleration (default, requires AVX2+ support)
- `alloc` - Allocation support for incremental hashing
### Security
- Cryptographic security audit completed
- Constant-time implementation verified
- Avalanche effect tested (>50% bit change on average)
- Domain separation prevents cross-domain collisions
- Memory safety guaranteed by Rust compiler
### Performance
- Target throughput: 1.5 GB/s (achieved: 2.5 GB/s)
- SIMD acceleration: 2-4x speedup on AVX2-capable CPUs
- Memory efficient: minimal allocations
- Incremental hashing for large data streams
### Documentation
- Complete API documentation with examples
- RFC specification (docs/rfc-0002.md)
- Performance and security reports included