Changelog
v0.5.0 (2025-09-26)
Refactor
Update import statement from regify to regman in registry.py
v0.4.0 (2025-09-23)
Feat
Introduce new mixins for enhanced functionality in YAPFileManager
Add method to infer file format from extension
Add new data transformation and traversal utilities
Add MultiFileMixin for enhanced multi-file operations in YAPFileManager
Implement multi-file operations module with loading and merging capabilities
Introduce merge strategies for file management
Add batch operations to YAPFileManager for enhanced key management
Enhance YAPFileManager and CacheMixin with simplified API and improved key management
Fix
Improve immutability in ReplaceMergeStrategy by using deepcopy
Refactor
Revise CacheMixin tests for improved clarity and functionality
Update CacheMixin methods to include additional parameters for improved key management
v0.3.0 (2025-09-22)
Intelligent Caching System (CacheMixin)
Smart Caching : Automatic caching of individual key values with TTL support
LRU Eviction : Least Recently Used eviction when cache is full
Memory Management : Size-based eviction to prevent memory issues
Statistics Tracking : Comprehensive hit/miss ratios and performance metrics
Pattern Invalidation : Invalidate cache entries using wildcard patterns
Thread Safety : Safe for use in multi-threaded environments
Unified Architecture : Centralized cache management in YAPFileManager
Lazy Loading System (LazySectionsMixin)
Memory Efficiency : Sections are loaded only when accessed
Cache Integration : Works seamlessly with the unified cache system
Automatic Invalidation : Cache invalidation when sections are modified
Statistics Tracking : Monitor lazy loading performance and efficiency
Configurable : Enable/disable lazy loading per manager instance
Streaming Support (StreamingMixin)
Large File Support : Process files larger than available RAM
Chunked Reading : Process files in configurable chunks
Memory Efficient : Constant memory usage regardless of file size
Multiple Formats : Support for different file encodings
Progress Tracking : Monitor processing progress with callbacks
Search Capabilities : Search within large files with context
Section Extraction : Extract specific sections from large files
Thread Safety : Safe for concurrent access
๐ง Enhanced Features
Unified Architecture
Centralized Cache Management : Single cache instance for all operations
Key Generation Optimization : Cached key generation for better performance
Comprehensive Statistics : Unified statistics across all caching mechanisms
Memory Management : Centralized memory management and cleanup
Key Caching : Cache generated keys to avoid redundant computations
Import Optimization : Optimized imports in mixins to reduce overhead
Parameter Validation : Enhanced parameter validation for better error handling
Statistics Collection : Comprehensive statistics for performance monitoring
๐ Documentation Updates
New Documentation
Caching & Performance Guide : Comprehensive guide to intelligent caching, lazy loading, and streaming
Caching & Streaming Examples : Practical examples and real-world usage patterns
API Reference Updates : Complete documentation for all new mixins and methods
Performance Monitoring : Guidelines for monitoring and optimizing performance
Enhanced Documentation
Mixins Documentation : Updated with all new mixins and their capabilities
Examples Section : New examples showcasing the latest features
Advanced Features : Updated with new functionality and best practices
๐งช Testing
Comprehensive Test Coverage
CacheMixin Tests : 21 tests covering all caching functionality
LazySectionsMixin Tests : 23 tests covering lazy loading scenarios
StreamingMixin Tests : 33 tests covering streaming functionality
Integration Tests : Tests for unified architecture and cross-mixin functionality
Performance Tests : Benchmarking and performance monitoring tests
Test Improvements
Mock Implementations : Comprehensive mock implementations for testing
Real File Testing : Integration tests with actual file operations
Error Handling Tests : Comprehensive error handling and edge case testing
Thread Safety Tests : Multi-threaded testing for all new features
๐ API Changes
New Methods
get_value(): Intelligent caching for individual keys
get_section(): Lazy loading for entire sections
stream_file(): Streaming file processing
stream_lines(): Line-by-line file processing
stream_sections(): Section extraction from large files
process_large_file(): Custom processing with progress tracking
search_in_file(): Pattern search in large files
get_cache_stats(): Comprehensive cache statistics
get_lazy_stats(): Lazy loading statistics
clear_key_cache(): Key generation cache management
Enhanced Methods
YAPFileManager.__init__(): New parameters for enabling features
_generate_cache_key(): Unified key generation with caching
get_cache(): Access to unified cache system
๐ฏ Use Cases
Configuration Management
High-performance configuration access with intelligent caching
Memory-efficient loading of large configuration files
Real-time configuration updates with cache invalidation
Large File Processing
Process log files larger than available RAM
Extract specific sections from large configuration files
Search and analyze large datasets efficiently
Memory-Efficient Applications
Lazy loading for applications with large configuration files
Streaming for data processing applications
Optimized memory usage for long-running applications
๐จ Breaking Changes
None
All new features are opt-in and backward compatible
Existing code continues to work without changes
New features can be enabled gradually
๐ฎ Future Enhancements
Planned Features
Distributed Caching : Support for Redis and other distributed caches
Compression : Automatic compression of cached data
Encryption : Encrypted caching for sensitive data
Metrics : More detailed performance metrics
Profiling : Built-in profiling tools
Visualization : Cache performance visualization tools
v0.2.0 (2025-09-10)
Feat
Introduce open_file helper function for simplified file management
Enhance YAPFileManager with key and section operations mixins
Introduce ContextMixin for enhanced context management in YAPFileManager
Enhance YAPFM with mixins and file operations
Implement FileManagerProxy for enhanced file management
Add validation utilities for file strategies
Introduce file management strategies and error handling
Implement file management and strategy registry system - Introduce YAPFileManager class for managing file paths and strategies - Add FileStrategyRegistry for thread-safe strategy registration and usage tracking - Define BaseFileStrategy protocol for file handling strategies - Create initial structure for various file strategies
Fix
Correct JSON loading function in JsonStrategy
Refactor
Update import paths and enhance TOML merging logic
Replace Lock with RLock for thread safety in FileStrategyRegistry
Back to top