Skip to content

v0.2.0: Major Refactoring and Advanced Search

Compare
Choose a tag to compare
@johnhuang316 johnhuang316 released this 23 Jun 04:03
· 28 commits to master since this release

Release v0.2.0: Major Refactoring and Advanced Search

🚀 Major Features

  • Advanced Search: Added search_code_advanced tool with automatic detection of ripgrep > ag > grep
  • Safe Fuzzy Search: Implemented word-boundary fuzzy matching without regex complexity
  • Lazy Loading: Search tools are detected only when needed for better performance

🔧 Refactoring & Cleanup

  • Code Deduplication: Eliminated ~70 lines of duplicate code between project_settings.py and server.py
  • Centralized Constants: Created constants.py for shared configuration values
  • Removed Invasive Features:
    • Automatic gitignore modification (was unnecessary)
    • README creation functionality (limited value)

🏗️ Architecture Improvements

  • Lazy Loading: Search tool detection only occurs when advanced search is used
  • Better Error Handling: Improved exception handling across the codebase
  • Cleaner Separation: Better separation of concerns between settings and server logic

🛠️ Technical Details

  • Search tool priority: ripgrep > ag > grep > basic search
  • Safe pattern escaping prevents regex injection
  • Backward compatibility maintained for existing functionality
  • Settings stored alongside index files for better organization

📁 Files Changed

  • src/code_index_mcp/constants.py (new)
  • src/code_index_mcp/project_settings.py (major refactoring)
  • src/code_index_mcp/server.py (enhanced with advanced search)

This release significantly improves code organization, adds powerful search capabilities, and removes unnecessary complexity while maintaining full backward compatibility.