v0.3.3 - Individual File Processing & Deduplication
π What's New
This release introduces individual file processing for better search quality and fixes critical issues with duplicate vector creation.
β¨ Features
- Individual File Processing: Files are now processed separately when
combine_documents: false, maintaining document boundaries for improved search relevance - Deterministic ID Generation: Vector IDs are now generated deterministically based on file path and content hash, preventing duplicates across runs
- Clean Interrupt Handling: Improved Ctrl+C handling with clean exit messages instead of verbose Python tracebacks
π Bug Fixes
- Fixed Duplicate Vector Creation: Resolved issue where each run would add exactly 1 duplicate vector to the collection
- Fixed
combine_documentsConfiguration: Theprocess_repositorymethod now properly respects thecombine_documents: falsesetting - Type Safety Improvements: Fixed type annotations throughout the codebase for better IDE support and error detection
- CI/CD Linting: Removed unused variables that were causing linting failures
π Performance Improvements
- Deterministic processing ensures consistent results across runs
- Individual file processing provides better context preservation
- Improved search quality with proper document boundaries
π§ Technical Changes
- Modified
_generate_chunk_idto use file path + content hash instead of sequential indices - Updated
process_repositoryto use_process_repository_internalwhich checks configuration settings - Added
_process_files_individuallymethod for file-by-file processing - Enhanced EmbeddingCache with proper get/set methods
π Configuration
To enable individual file processing (recommended for better search quality):
processing:
combine_documents: false # Process files individually
per_file_chunking: true # Better context preservationCommits Since v0.3.2
- fix: Remove unused variable to pass CI/CD linting
- docs: Update README with v0.3.3 features and changelog
- fix: Process files individually when combine_documents is false
- fix: Add debug logging and improve combine_documents check
- feat: Add individual file processing for better vector management
- fix: Resolve duplicate vector creation and improve interrupt handling
Full Changelog: v0.3.2...v0.3.3