Skip to content

Release v2.3.0

Choose a tag to compare

@johnhuang316 johnhuang316 released this 11 Sep 03:08
· 57 commits to master since this release

Major Performance Optimizations

This release includes performance optimizations to the code indexing engine.

Performance Improvements

Python Strategy Optimization

  • Reduced from 3 separate AST traversals to 1 single-pass visitor

Java Strategy Optimization

  • Merged double tree-sitter traversals into single unified pass

TypeScript Strategy Optimization

  • Consolidated double traversals into single optimized pass

System-Level Parallelization

  • Implemented ThreadPoolExecutor for concurrent file processing
  • Automatic worker count optimization based on CPU cores
  • Thread-safe strategy sharing for memory efficiency

Algorithm Optimization

  • Replaced O(n²) symbol lookups with O(1) hash table operations
  • Eliminated quadratic complexity in call relationship analysis

Bug Fixes

Java Method Call Analysis

  • Improved accuracy of method call detection and relationships
  • Fixed false positives in method name matching
  • Enhanced support for obj.method() call patterns

Cross-Platform Search Support

  • Added support for Linux/Unix grep context line formats
  • Fixed grep parsing issues on different operating systems
  • Improved handling of absolute and relative paths

Search Configuration

  • Changed max_line_length default from 200 to None for backward compatibility
  • Preserved existing behavior for users who don't set explicit limits
  • Added comprehensive parameter validation

Improvements

  • Reduced computational complexity in parsing strategies
  • Parallel processing for faster indexing of large codebases
  • Optimized symbol lookup algorithms

What's Changed

  • Single-pass AST/tree-sitter parsing across all optimized strategies
  • Parallel file processing with configurable worker pools
  • Hash table-based symbol lookup indexes
  • Maintained full backward compatibility

Technical Details

  • All strategies are thread-safe and support parallel execution
  • Strategy instances remain shared and stateless for memory efficiency
  • File watcher integration uses optimized rebuilds automatically
  • No configuration changes required - improvements are transparent

Deployment

Automatic Benefits:

  • Performance improvements work immediately after update
  • Existing installations benefit without configuration changes
  • File monitoring automatically uses optimized indexing

Recommended:

  • Restart MCP server after upgrade
  • Optionally run refresh_index() for immediate optimization

Compatibility

  • All existing MCP tool interfaces unchanged
  • Existing project configurations work without modification
  • No new external dependencies required
  • Python 3.10+ requirement maintained

This release transforms code-index-mcp into a high-performance solution suitable for enterprise-scale codebases.