You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: migrate SCIP indexing from regex to tree-sitter AST parsing
This major update replaces the regex-based code parsing system with tree-sitter
for more accurate and robust code analysis in SCIP (Source Code Intelligence
Protocol) format.
## Key Changes
### New SCIP Indexing System
- Add complete SCIP indexing infrastructure with protobuf support
- Implement SCIPIndexBuilder for orchestrating multi-language analysis
- Create strategy pattern for language-specific AST analysis
### Tree-sitter Integration
- Add tree-sitter dependencies for JavaScript, TypeScript, Java, and C/Objective-C
- Implement tree-sitter strategies for precise AST-based code parsing
- Replace regex patterns with native language parsers for better accuracy
### Language Support Enhancements
- JavaScript/TypeScript: Full ES6+ and TypeScript syntax support
- Java: Comprehensive class, interface, method, and package analysis
- Objective-C: Hybrid approach using C parser + Objective-C patterns
- Python: Enhanced AST analysis with improved symbol detection
### Code Quality Improvements
- Fix all pylint warnings across modified files
- Move imports to top-level to resolve import-outside-toplevel warnings
- Remove unused variables and improve exception handling
- Add proper type hints and documentation
### Architecture Improvements
- Refactor service layer to support both legacy and SCIP indexing
- Improve project initialization with better error handling
- Enhanced file watcher integration for real-time updates
## Dependencies Added
- protobuf>=4.21.0 for SCIP message serialization
- tree-sitter>=0.20.0 and language parsers for AST analysis
This migration provides a foundation for more accurate code intelligence
features while maintaining backward compatibility with existing functionality.
0 commit comments