v0.8.0
This release significantly improves the framework's configuration management, local model support, and validation capabilities while maintaining backward compatibility where possible. Users should review the new configuration system documentation when upgrading (see docs here).
Major Features
New Priority-Based Configuration System
- Introduced a hierarchical configuration management system with three priority levels:
- Debug Mode (Current Working Directory) - Highest priority
- Environment-Specific Config (Python Environment) - Second priority
- Global Config (Home Directory) - Lowest priority
- Added
symconfig
command to inspect current configuration setup - Configurations now properly cascade and fall back based on priority
Enhanced Contract System
- Added new
contract
decorator for Design by Contract (DbC) pattern - Supports both type and semantic validation
- Includes retry mechanisms and performance monitoring
- Added comprehensive performance statistics tracking for contract execution
Improved Local Model Support
- Extended support for local LLaMA.cpp models:
- Added embedding capabilities through local models
- Support for both Python bindings and direct C++ server
- Added batch processing for embeddings
- Enhanced server configuration options for local models
Package Management Improvements
- Enhanced
sympkg
with new features:- Support for local package installation
- Git submodules initialization option
- Improved package update mechanism
- Added
--local-path
option for installing from local directories - Added
--submodules
flag for Git repository operations
Breaking Changes
- Configuration file locations have changed due to new priority system
- Environment variables structure updated for speech-related settings
- Some API methods now return different types/structures
- Updated dependency requirements:
- numpy: Now supports up to 2.1.3
- openai: Minimum version increased to 1.60.0
New Features
- Added MetadataTracker for better usage tracking and statistics
- Enhanced token truncation system with smart percentage calculation
- Added new validation primitives for type and semantic checking
- Improved error handling and reporting
- Added new data models for structured input/output
Improvements
- Better handling of JSON validation and error correction
- Enhanced error messages and logging
- Improved documentation structure
- Better support for local development workflows
- Enhanced configuration management utilities
Dependencies
- Added new dependencies:
- nest-asyncio>=1.6.0
- rich>=13.9.4
- Optional dependency for LLaMA.cpp: llama-cpp-python[server]>=0.3.7
Documentation
- Reorganized API documentation structure
- Added comprehensive configuration management guide
- Improved package management documentation
- Added new examples and use cases
- Enhanced local engine documentation
Bug Fixes
- Fixed configuration cascade issues
- Improved error handling in package management
- Fixed token counting in various scenarios
- Addressed memory leaks in long-running processes
- Fixed various edge cases in validation systems
Developer Tools
- Added new
symconfig
command for configuration inspection - Enhanced
symdev
andsympkg
utilities - Improved debugging capabilities
- Added performance monitoring tools
Full Changelog: v0.7.4...v0.8.0