tree-sitter-analyzer 1.2.2__tar.gz → 1.2.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of tree-sitter-analyzer might be problematic. Click here for more details.
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/CHANGELOG.md +22 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/PKG-INFO +3 -3
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/README.md +2 -2
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/README_ja.md +2 -2
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/README_zh.md +2 -2
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/pyproject.toml +2 -2
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/languages/java_plugin.py +65 -1
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/uv.lock +2 -2
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/.gitignore +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/.kiro/steering/product.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/.kiro/steering/structure.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/.kiro/steering/tech.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/.pre-commit-config.yaml +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/.pre-commit-hooks.yaml +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/AI_COLLABORATION_GUIDE.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/CODE_STYLE_GUIDE.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/CONTRIBUTING.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/DEPLOYMENT_GUIDE.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/GITFLOW.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/GITFLOW_ja.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/GITFLOW_zh.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/LANGUAGE_GUIDELINES.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/LLM_CODING_GUIDELINES.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/MCP_SETUP_DEVELOPERS.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/MCP_SETUP_USERS.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/PROJECT_ROOT_CONFIG.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/PYPI_RELEASE_GUIDE.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/REFACTORING_SUMMARY.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/build_standalone.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/check_quality.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/docs/GITFLOW_BEST_PRACTICES.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/docs/RELEASE_EXECUTION_GUIDE.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/docs/api.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/BigService.java +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/BigService.json +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/BigService.summary.json +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/JavaDocTest.java +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/MultiClass.java +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/Sample.java +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/calculate_token_comparison.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/project_root_demo.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/sample.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/security_demo.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/security_integration_demo.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/llm_code_checker.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/pypirc_example.txt +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/pytest.ini +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/scripts/README.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/scripts/gitflow_helper.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/scripts/gitflow_release_automation.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/scripts/sync_version.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/scripts/sync_version_minimal.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/start_mcp_server.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/01_onboarding.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/02_architecture_map.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/03_cli_cheatsheet.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/04_mcp_cheatsheet.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/05_plugin_tutorial.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/06_quality_workflow.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/07_troubleshooting.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/08_prompt_library.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/09_tasks.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/10_glossary.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/11_takeover_plan.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/CLI_COMMAND_CORRECTIONS.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/IMPROVEMENT_SUMMARY.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/README.md +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/__main__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/api.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/__main__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/advanced_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/base_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/default_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/partial_read_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/query_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/structure_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/summary_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/commands/table_command.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/info_commands.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli_main.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/constants.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/analysis_engine.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/cache_service.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/engine.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/parser.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/query.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/query_filter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/query_service.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/encoding_utils.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/exceptions.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/file_handler.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/formatters/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/formatters/base_formatter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/formatters/formatter_factory.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/formatters/java_formatter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/formatters/python_formatter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/interfaces/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/interfaces/cli.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/interfaces/cli_adapter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/interfaces/mcp_adapter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/interfaces/mcp_server.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/language_detector.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/language_loader.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/languages/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/languages/javascript_plugin.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/languages/python_plugin.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/resources/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/resources/code_file_resource.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/resources/project_stats_resource.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/server.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/analyze_scale_tool.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/analyze_scale_tool_cli_compatible.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/base_tool.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/query_tool.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/read_partial_tool.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/table_format_tool.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/universal_analyze_tool.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/utils/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/utils/error_handler.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/utils/path_resolver.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/models.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/output_manager.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/plugins/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/plugins/base.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/plugins/manager.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/project_detector.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/java.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/javascript.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/python.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/typescript.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/query_loader.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/security/__init__.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/security/boundary_manager.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/security/regex_checker.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/security/validator.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/table_formatter.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/utils.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/upload_interactive.py +0 -0
- {tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/upload_to_pypi.py +0 -0
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.2.3] - 2025-08-27
|
|
4
|
+
|
|
5
|
+
### Release: v1.2.3
|
|
6
|
+
|
|
7
|
+
#### 🐛 Java Import Parsing Fix
|
|
8
|
+
- **Robust fallback mechanism**: Added regex-based import extraction when tree-sitter parsing fails
|
|
9
|
+
- **CI environment compatibility**: Resolved import count assertion failures across different CI environments
|
|
10
|
+
- **Cross-platform stability**: Enhanced Java parser robustness for Windows, macOS, and Linux
|
|
11
|
+
|
|
12
|
+
#### 🔧 Technical Improvements
|
|
13
|
+
- **Fallback import extraction**: Implemented backup parsing method for Java import statements
|
|
14
|
+
- **Environment handling**: Better handling of tree-sitter version differences in CI environments
|
|
15
|
+
- **Error recovery**: Improved error handling and recovery in Java element extraction
|
|
16
|
+
- **GitFlow process correction**: Standardized release process documentation and workflow
|
|
17
|
+
|
|
18
|
+
#### 📚 Documentation Updates
|
|
19
|
+
- **Multi-language support**: Updated version numbers across all language variants (English, Japanese, Chinese)
|
|
20
|
+
- **Process documentation**: Corrected and standardized GitFlow release process
|
|
21
|
+
- **Version consistency**: Synchronized version numbers across all project files
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
3
25
|
## [1.2.2] - 2025-08-27
|
|
4
26
|
|
|
5
27
|
### Release: v1.2.2
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tree-sitter-analyzer
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.3
|
|
4
4
|
Summary: Extensible multi-language code analyzer framework using Tree-sitter with dynamic plugin architecture
|
|
5
5
|
Project-URL: Homepage, https://github.com/aimasteracc/tree-sitter-analyzer
|
|
6
6
|
Project-URL: Documentation, https://github.com/aimasteracc/tree-sitter-analyzer#readme
|
|
@@ -167,7 +167,7 @@ Description-Content-Type: text/markdown
|
|
|
167
167
|
[](#quality-assurance)
|
|
168
168
|
[](#quality-assurance)
|
|
169
169
|
[](https://pypi.org/project/tree-sitter-analyzer/)
|
|
170
|
-
[](https://github.com/aimasteracc/tree-sitter-analyzer/releases)
|
|
171
171
|
[](https://github.com/aimasteracc/tree-sitter-analyzer)
|
|
172
172
|
|
|
173
173
|
## 🚀 Break LLM Token Limits, Let AI Understand Code Files of Any Size
|
|
@@ -739,7 +739,7 @@ Tree-sitter Analyzer automatically detects and protects project boundaries:
|
|
|
739
739
|
- **Zero test failures** - Fully CI/CD ready
|
|
740
740
|
- **Cross-platform compatibility** - Windows, macOS, Linux
|
|
741
741
|
|
|
742
|
-
### ⚡ **Latest Quality Achievements (v1.2.
|
|
742
|
+
### ⚡ **Latest Quality Achievements (v1.2.3)**
|
|
743
743
|
- ✅ **Cross-platform path compatibility** - Fixed Windows short path names and macOS symbolic link differences
|
|
744
744
|
- ✅ **Windows environment** - Implemented robust path normalization using Windows API
|
|
745
745
|
- ✅ **macOS environment** - Fixed `/var` vs `/private/var` symbolic link differences
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](#quality-assurance)
|
|
7
7
|
[](#quality-assurance)
|
|
8
8
|
[](https://pypi.org/project/tree-sitter-analyzer/)
|
|
9
|
-
[](https://github.com/aimasteracc/tree-sitter-analyzer/releases)
|
|
10
10
|
[](https://github.com/aimasteracc/tree-sitter-analyzer)
|
|
11
11
|
|
|
12
12
|
## 🚀 Break LLM Token Limits, Let AI Understand Code Files of Any Size
|
|
@@ -578,7 +578,7 @@ Tree-sitter Analyzer automatically detects and protects project boundaries:
|
|
|
578
578
|
- **Zero test failures** - Fully CI/CD ready
|
|
579
579
|
- **Cross-platform compatibility** - Windows, macOS, Linux
|
|
580
580
|
|
|
581
|
-
### ⚡ **Latest Quality Achievements (v1.2.
|
|
581
|
+
### ⚡ **Latest Quality Achievements (v1.2.3)**
|
|
582
582
|
- ✅ **Cross-platform path compatibility** - Fixed Windows short path names and macOS symbolic link differences
|
|
583
583
|
- ✅ **Windows environment** - Implemented robust path normalization using Windows API
|
|
584
584
|
- ✅ **macOS environment** - Fixed `/var` vs `/private/var` symbolic link differences
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](#品質保証)
|
|
7
7
|
[](#品質保証)
|
|
8
8
|
[](https://pypi.org/project/tree-sitter-analyzer/)
|
|
9
|
-
[](https://github.com/aimasteracc/tree-sitter-analyzer/releases)
|
|
10
10
|
[](https://github.com/aimasteracc/tree-sitter-analyzer)
|
|
11
11
|
|
|
12
12
|
## 🚀 LLMトークン制限を突破し、AIにあらゆるサイズのコードファイルを理解させる
|
|
@@ -566,7 +566,7 @@ Tree-sitter Analyzerは自動的にプロジェクト境界を検出・保護:
|
|
|
566
566
|
- **ゼロテスト失敗** - 完全なCI/CD対応
|
|
567
567
|
- **クロスプラットフォーム対応** - Windows、macOS、Linux
|
|
568
568
|
|
|
569
|
-
### ⚡ **最新の品質成果(v1.2.
|
|
569
|
+
### ⚡ **最新の品質成果(v1.2.3)**
|
|
570
570
|
- ✅ **クロスプラットフォームパス互換性** - Windows短パス名とmacOSシンボリックリンクの違いを修正
|
|
571
571
|
- ✅ **Windows環境** - Windows APIを使用した堅牢なパス正規化を実装
|
|
572
572
|
- ✅ **macOS環境** - `/var`と`/private/var`シンボリックリンクの違いを修正
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](#质量保证)
|
|
7
7
|
[](#质量保证)
|
|
8
8
|
[](https://pypi.org/project/tree-sitter-analyzer/)
|
|
9
|
-
[](https://github.com/aimasteracc/tree-sitter-analyzer/releases)
|
|
10
10
|
[](https://github.com/aimasteracc/tree-sitter-analyzer)
|
|
11
11
|
|
|
12
12
|
## 🚀 突破LLM token限制,让AI理解任意大小的代码文件
|
|
@@ -566,7 +566,7 @@ Tree-sitter Analyzer自动检测和保护项目边界:
|
|
|
566
566
|
- **零测试失败** - 完全CI/CD就绪
|
|
567
567
|
- **跨平台兼容** - Windows、macOS、Linux
|
|
568
568
|
|
|
569
|
-
### ⚡ **最新质量成就(v1.2.
|
|
569
|
+
### ⚡ **最新质量成就(v1.2.3)**
|
|
570
570
|
- ✅ **跨平台路径兼容性** - 修复Windows短路径名称和macOS符号链接差异
|
|
571
571
|
- ✅ **Windows环境** - 使用Windows API实现稳健的路径标准化
|
|
572
572
|
- ✅ **macOS环境** - 修复`/var`与`/private/var`符号链接差异
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tree-sitter-analyzer"
|
|
7
|
-
version = "1.2.
|
|
7
|
+
version = "1.2.3"
|
|
8
8
|
description = "Extensible multi-language code analyzer framework using Tree-sitter with dynamic plugin architecture"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -320,7 +320,7 @@ directory = "htmlcov"
|
|
|
320
320
|
# MCP server configuration
|
|
321
321
|
[tool.mcp]
|
|
322
322
|
server_name = "tree-sitter-analyzer"
|
|
323
|
-
server_version = "1.2.
|
|
323
|
+
server_version = "1.2.3"
|
|
324
324
|
description = "Tree-sitter based code analysis MCP server with multi-language support"
|
|
325
325
|
capabilities = [
|
|
326
326
|
"check_code_scale",
|
|
@@ -150,7 +150,7 @@ class JavaElementExtractor(ElementExtractor):
|
|
|
150
150
|
def extract_imports(
|
|
151
151
|
self, tree: "tree_sitter.Tree", source_code: str
|
|
152
152
|
) -> list[Import]:
|
|
153
|
-
"""Extract Java import statements"""
|
|
153
|
+
"""Extract Java import statements with enhanced robustness"""
|
|
154
154
|
self.source_code = source_code
|
|
155
155
|
self.content_lines = source_code.split("\n")
|
|
156
156
|
|
|
@@ -172,9 +172,73 @@ class JavaElementExtractor(ElementExtractor):
|
|
|
172
172
|
# After package and imports come class declarations, so stop
|
|
173
173
|
break
|
|
174
174
|
|
|
175
|
+
# Fallback: if no imports found via tree-sitter, try regex-based extraction
|
|
176
|
+
if not imports and "import" in source_code:
|
|
177
|
+
log_debug("No imports found via tree-sitter, trying regex fallback")
|
|
178
|
+
fallback_imports = self._extract_imports_fallback(source_code)
|
|
179
|
+
imports.extend(fallback_imports)
|
|
180
|
+
|
|
175
181
|
log_debug(f"Extracted {len(imports)} imports")
|
|
176
182
|
return imports
|
|
177
183
|
|
|
184
|
+
def _extract_imports_fallback(self, source_code: str) -> list[Import]:
|
|
185
|
+
"""Fallback import extraction using regex when tree-sitter fails"""
|
|
186
|
+
imports = []
|
|
187
|
+
lines = source_code.split("\n")
|
|
188
|
+
|
|
189
|
+
for line_num, line in enumerate(lines, 1):
|
|
190
|
+
line = line.strip()
|
|
191
|
+
if line.startswith("import ") and line.endswith(";"):
|
|
192
|
+
# Extract import statement
|
|
193
|
+
import_content = line[:-1] # Remove semicolon
|
|
194
|
+
|
|
195
|
+
if "static" in import_content:
|
|
196
|
+
# Static import
|
|
197
|
+
static_match = re.search(r"import\s+static\s+([\w.]+)", import_content)
|
|
198
|
+
if static_match:
|
|
199
|
+
import_name = static_match.group(1)
|
|
200
|
+
if import_content.endswith(".*"):
|
|
201
|
+
import_name = import_name.replace(".*", "")
|
|
202
|
+
parts = import_name.split(".")
|
|
203
|
+
if len(parts) > 1:
|
|
204
|
+
import_name = ".".join(parts[:-1])
|
|
205
|
+
|
|
206
|
+
imports.append(Import(
|
|
207
|
+
name=import_name,
|
|
208
|
+
start_line=line_num,
|
|
209
|
+
end_line=line_num,
|
|
210
|
+
raw_text=line,
|
|
211
|
+
language="java",
|
|
212
|
+
module_name=import_name,
|
|
213
|
+
is_static=True,
|
|
214
|
+
is_wildcard=import_content.endswith(".*"),
|
|
215
|
+
import_statement=import_content,
|
|
216
|
+
))
|
|
217
|
+
else:
|
|
218
|
+
# Normal import
|
|
219
|
+
normal_match = re.search(r"import\s+([\w.]+)", import_content)
|
|
220
|
+
if normal_match:
|
|
221
|
+
import_name = normal_match.group(1)
|
|
222
|
+
if import_content.endswith(".*"):
|
|
223
|
+
if import_name.endswith(".*"):
|
|
224
|
+
import_name = import_name[:-2]
|
|
225
|
+
elif import_name.endswith("."):
|
|
226
|
+
import_name = import_name[:-1]
|
|
227
|
+
|
|
228
|
+
imports.append(Import(
|
|
229
|
+
name=import_name,
|
|
230
|
+
start_line=line_num,
|
|
231
|
+
end_line=line_num,
|
|
232
|
+
raw_text=line,
|
|
233
|
+
language="java",
|
|
234
|
+
module_name=import_name,
|
|
235
|
+
is_static=False,
|
|
236
|
+
is_wildcard=import_content.endswith(".*"),
|
|
237
|
+
import_statement=import_content,
|
|
238
|
+
))
|
|
239
|
+
|
|
240
|
+
return imports
|
|
241
|
+
|
|
178
242
|
def extract_packages(
|
|
179
243
|
self, tree: "tree_sitter.Tree", source_code: str
|
|
180
244
|
) -> list[Package]:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
version = 1
|
|
2
|
-
revision =
|
|
2
|
+
revision = 2
|
|
3
3
|
requires-python = ">=3.10"
|
|
4
4
|
|
|
5
5
|
[[package]]
|
|
@@ -1495,7 +1495,7 @@ wheels = [
|
|
|
1495
1495
|
|
|
1496
1496
|
[[package]]
|
|
1497
1497
|
name = "tree-sitter-analyzer"
|
|
1498
|
-
version = "1.2.
|
|
1498
|
+
version = "1.2.3"
|
|
1499
1499
|
source = { editable = "." }
|
|
1500
1500
|
dependencies = [
|
|
1501
1501
|
{ name = "cachetools" },
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/calculate_token_comparison.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/examples/security_integration_demo.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/scripts/gitflow_release_automation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/training/CLI_COMMAND_CORRECTIONS.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/__init__.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/__main__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/cli/info_commands.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/cache_service.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/engine.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/parser.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/query.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/query_filter.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/core/query_service.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/encoding_utils.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/exceptions.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/file_handler.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/interfaces/cli.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/language_detector.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/language_loader.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/languages/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/server.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/tools/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/mcp/utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/output_manager.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/plugins/__init__.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/plugins/base.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/plugins/manager.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/project_detector.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/__init__.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/java.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/javascript.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/python.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/queries/typescript.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/query_loader.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/security/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/security/validator.py
RENAMED
|
File without changes
|
{tree_sitter_analyzer-1.2.2 → tree_sitter_analyzer-1.2.3}/tree_sitter_analyzer/table_formatter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|