VFBquery v0.5.1
VFBquery v0.5.1 Release Notes
Overview
VFBquery v0.5.1 is a maintenance release that builds upon the major performance and feature enhancements introduced in v0.5.0. This release focuses on refining the caching system, improving test coverage, enhancing documentation, fixing minor bugs, and streamlining CI/CD workflows. These improvements ensure better reliability, performance, and developer experience for VirtualFlyBrain data exploration.
🚀 Major Features
Enhanced Caching System
- Background Caching: Implemented background caching for expensive queries in
SolrResultCacheto improve responsiveness - Advanced Result Handling: Enhanced cached result handling to support slicing for dict types with 'rows' and 'queries' keys
- Force Refresh Option: Added force refresh capability to caching functions for bypassing cache when needed
- Comprehensive SOLR Caching: Extended SOLR-based caching to similarity queries, term info retrieval, and neuron-related functions
- Unified Caching Architecture: Refactored caching implementation to use SOLR-based caching throughout the codebase for better performance and simplified management
🔧 Improvements
Testing & Quality Assurance
- Expanded Test Coverage: Added initial test cases for VFB term and instance retrieval functions
- Improved Test Logic: Refactored neuron part tests to set minimum expected counts and enhance cache key handling for DataFrame results
- SOLR Availability Handling: Added helper methods to skip tests when SOLR server is unavailable
- Test Result Management: Refactored test results update to use JSON format for better data handling and fixed update logic for appending new templates
Documentation & Examples
- Enhanced README: Added detailed metadata and example queries for JRC2018Unisex brain template, refactored medulla examples, and improved overall clarity
- Consistent Formatting: Refactored README thumbnails for consistent escaping and added sorting functions for data rows in test examples
- Code Quality: Updated test scripts and README for improved functionality and maintainability
Code Quality & Maintenance
- Import Refactoring: Updated import statements to use relative paths and improved code structure readability
- Parser Enhancements: Refactored
readme_parserto remove regex for boolean conversion and addedupdate_readmescript for JSON block replacement - Code Block Processing: Added logic to skip processing Python code blocks containing import statements
🐛 Bug Fixes
- Debug Cleanup: Removed debug print statements from cached functions and Owlery client
- URL Corrections: Fixed license icon URL to use HTTP and updated term info serialization test URLs to HTTPS
- Workflow Fixes: Restored original print statements for SOLR unavailability in example execution
- Query Consistency: Refactored neuron region connectivity queries to use 'region' instead of 'label' for clarity in preview columns
🔄 CI/CD Enhancements
- SOLR Integration: Added SOLR availability checks to GitHub Actions workflows with proper exception handling
- Workflow Optimization: Reordered dependency installation steps and removed duplicate conditions in examples workflow
- Test Result Updates: Added automated steps to update performance test results in CI/CD pipeline
- Path Corrections: Fixed paths for updating test results in GitHub Actions workflow
📊 Performance Metrics
- Caching Efficiency: Improved cache hit rates through enhanced SOLR-based caching implementation
- Background Processing: Reduced blocking operations with background caching for expensive queries
- Test Reliability: Better handling of external service dependencies (SOLR) in automated testing
📦 Dependencies
- No dependency changes in this release
- Enhanced compatibility with existing VFB infrastructure through improved error handling
🙏 Acknowledgments
This release includes contributions from the VirtualFlyBrain development team, focusing on user feedback regarding performance, reliability, and usability. Special thanks to automated testing and CI/CD improvements that ensure consistent quality.
Installation:
pip install vfbquery==0.5.1Full Changelog: v0.5.0...v0.5.1