PySAD v0.3.4 Release
🐛 Critical Bug Fixes
ReferenceWindowModel Reset Bug (Issue #25)
- Fixed critical reference window reset bug that was causing incorrect window reinitialization during sliding window operations
- The bug occurred when
cur_window_Xlength was less thanwindow_sizeafter sliding, causingreference_window_Xto be incorrectly reset to just the current window instead of maintaining the properly sized reference window - This fix ensures stable and reliable sliding window behavior for all models using
ReferenceWindowModel(includingIForestASD) - Added comprehensive test coverage to prevent regression
AUROCMetric Single Class Validation
- Added validation for single class presence in
AUROCMetricevaluation to prevent evaluation errors - Now properly handles edge cases where only one class is present in the evaluation data
- Throws informative
ValueErrorwith message "Only one class present" instead of cryptic sklearn errors
StreamhashProjector Type Casting Fix
- Fixed hash seed type casting issue in
StreamhashProjector's_hash_stringmethod - Ensures proper integer casting of seed parameter to prevent type-related errors in hash computation
- Improves stability of streamhash projection operations
🔧 Infrastructure Improvements
- Enhanced CI infrastructure with Python 3.13 support
- Updated dependency management for better compatibility
- Improved test coverage for edge cases and bug prevention
🙏 Acknowledgments
Special thanks to @onixlas for discovering and reporting the critical reference window bug that led to this important fix.
📋 Full Changelog
Full Changelog: v0.3.3...v0.3.4
For detailed changes, see our CHANGES.txt.
🚀 Installation
pip install pysad==0.3.4🔗 Links
This release focuses on critical stability fixes, particularly for streaming anomaly detection workflows using reference window models. We strongly recommend upgrading from previous versions to ensure reliable sliding window operations.