Skip to content

Conversation

@avikalpg
Copy link
Contributor

No description provided.

- Add TreeSitterProcessor with multi-language support framework
- Implement Python component extraction (classes, functions, methods)
- Use tree-sitter-language-pack for AST parsing
- Support Python, TypeScript, JavaScript, Go, Rust, Java, Swift (Python fully working)
- Extract component relationships from static analysis
- Register as 'tree-sitter-dependency-graph' mode
- Add basic test demonstrating Python extraction

Component extraction includes:
- Classes/containers with nested methods
- Standalone functions
- Import statements
- Function call analysis for dependency mapping

Successfully tested with Python code showing proper extraction of:
- 1 class (MyClass)
- 2 methods (__init__, increment)
- 2 functions (standalone_function, another_function)

Next steps:
- Complete TypeScript/JavaScript extraction (partial implementation)
- Complete Go, Rust, Java, Swift extraction (partial implementation)
- Add comprehensive testing across all supported languages
- Enhance dependency detection for cross-file references
- Add tree-sitter-dependency-graph to available modes in README
- Document Python support as fully working
- Note other languages as in progress
- Update CHANGELOG with phase 1 implementation details
- Add usage examples for tree-sitter mode
- Document completed work: Python extraction fully functional
- Detail in-progress work for other languages
- Explain tree-sitter API migration (0.25+)
- Provide technical insights and lessons learned
- Outline next steps for phases 2-4
- Include usage examples and performance notes
Move documentation files to docs/:
- PHASE1_SUMMARY.md -> docs/
- GRAPH_EXPORT_FEATURE.md -> docs/
- TESTING_GUIDE.md -> docs/

Move test files to tests/:
- test_tree_sitter_basic.py -> tests/
- test_graph_export.py -> tests/
- test_structured_export.py -> tests/
- test_cli_manual.sh -> tests/

Move example to tests/examples/:
- example_usage.py -> tests/examples/

This improves project organization and follows standard conventions.
@avikalpg avikalpg self-assigned this Oct 29, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 29, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (2)
  • feature/*
  • akg/*

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch phase1-tree-sitter-dependency-extraction

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants