tree-sitter-analyzer 0.3.0__tar.gz → 0.6.0__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.

Files changed (105) hide show
  1. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/CHANGELOG.md +203 -0
  2. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/CODE_STYLE_GUIDE.md +13 -12
  3. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/CONTRIBUTING.md +1 -1
  4. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/DEPLOYMENT_GUIDE.md +278 -278
  5. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/PKG-INFO +11 -11
  6. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/README.md +9 -9
  7. tree_sitter_analyzer-0.6.0/README_ja.md +214 -0
  8. tree_sitter_analyzer-0.6.0/README_zh.md +214 -0
  9. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/build_standalone.py +136 -136
  10. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/BigService.java +102 -103
  11. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/BigService.json +3 -3
  12. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/BigService.summary.json +3 -3
  13. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/Sample.java +36 -36
  14. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/calculate_token_comparison.py +76 -70
  15. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/pyproject.toml +5 -3
  16. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/__init__.py +5 -6
  17. tree_sitter_analyzer-0.6.0/tree_sitter_analyzer/__main__.py +11 -0
  18. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/api.py +4 -2
  19. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/__init__.py +3 -3
  20. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/advanced_command.py +1 -1
  21. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/base_command.py +1 -1
  22. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/default_command.py +1 -1
  23. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/partial_read_command.py +2 -2
  24. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/query_command.py +5 -5
  25. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/summary_command.py +2 -2
  26. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/table_command.py +14 -11
  27. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/info_commands.py +14 -13
  28. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli_main.py +51 -31
  29. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/core/analysis_engine.py +54 -90
  30. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/core/cache_service.py +31 -31
  31. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/core/engine.py +6 -4
  32. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/core/parser.py +1 -1
  33. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/core/query.py +502 -494
  34. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/encoding_utils.py +3 -2
  35. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/exceptions.py +23 -23
  36. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/file_handler.py +7 -14
  37. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/formatters/base_formatter.py +18 -18
  38. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/formatters/formatter_factory.py +15 -15
  39. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/formatters/java_formatter.py +291 -287
  40. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/formatters/python_formatter.py +259 -255
  41. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/interfaces/cli.py +1 -1
  42. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/interfaces/cli_adapter.py +62 -41
  43. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/interfaces/mcp_adapter.py +43 -17
  44. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/interfaces/mcp_server.py +9 -9
  45. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/language_detector.py +398 -398
  46. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/language_loader.py +224 -224
  47. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/languages/java_plugin.py +1174 -1129
  48. {tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/plugins → tree_sitter_analyzer-0.6.0/tree_sitter_analyzer/languages}/javascript_plugin.py +3 -3
  49. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/languages/python_plugin.py +26 -8
  50. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/resources/code_file_resource.py +0 -3
  51. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/resources/project_stats_resource.py +555 -560
  52. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/server.py +4 -4
  53. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/analyze_scale_tool.py +63 -30
  54. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/analyze_scale_tool_cli_compatible.py +9 -4
  55. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/table_format_tool.py +2 -2
  56. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/utils/__init__.py +10 -8
  57. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/models.py +470 -470
  58. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/output_manager.py +12 -20
  59. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/plugins/__init__.py +9 -62
  60. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/plugins/base.py +53 -1
  61. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/plugins/manager.py +29 -12
  62. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/queries/java.py +78 -78
  63. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/queries/javascript.py +7 -7
  64. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/queries/python.py +18 -18
  65. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/queries/typescript.py +12 -12
  66. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/query_loader.py +17 -14
  67. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/table_formatter.py +24 -19
  68. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/utils.py +7 -7
  69. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/upload_to_pypi.py +13 -13
  70. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/uv.lock +1922 -1884
  71. tree_sitter_analyzer-0.6.0/verify_release.py +178 -0
  72. tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/__main__.py +0 -11
  73. tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/java_analyzer.py +0 -218
  74. tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/plugins/java_plugin.py +0 -608
  75. tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/plugins/plugin_loader.py +0 -85
  76. tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/plugins/python_plugin.py +0 -606
  77. tree_sitter_analyzer-0.3.0/tree_sitter_analyzer/plugins/registry.py +0 -374
  78. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/.gitignore +0 -0
  79. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/.pre-commit-config.yaml +0 -0
  80. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/AI_COLLABORATION_GUIDE.md +0 -0
  81. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/LLM_CODING_GUIDELINES.md +0 -0
  82. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/MCP_SETUP_DEVELOPERS.md +0 -0
  83. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/MCP_SETUP_USERS.md +0 -0
  84. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/check_quality.py +0 -0
  85. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/docs/api.md +0 -0
  86. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/JavaDocTest.java +0 -0
  87. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/MultiClass.java +0 -0
  88. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/examples/sample.py +0 -0
  89. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/llm_code_checker.py +0 -0
  90. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/pytest.ini +0 -0
  91. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/__main__.py +0 -0
  92. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/__init__.py +0 -0
  93. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/cli/commands/structure_command.py +0 -0
  94. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/core/__init__.py +0 -0
  95. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/formatters/__init__.py +0 -0
  96. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/interfaces/__init__.py +0 -0
  97. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/languages/__init__.py +0 -0
  98. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/__init__.py +0 -0
  99. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/resources/__init__.py +0 -0
  100. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/__init__.py +0 -0
  101. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/base_tool.py +0 -0
  102. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/read_partial_tool.py +0 -0
  103. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/tools/universal_analyze_tool.py +0 -0
  104. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/mcp/utils/error_handler.py +0 -0
  105. {tree_sitter_analyzer-0.3.0 → tree_sitter_analyzer-0.6.0}/tree_sitter_analyzer/queries/__init__.py +0 -0
@@ -5,6 +5,209 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.6.0] - 2025-08-03
9
+
10
+ ### 💥 Breaking Changes - Legacy Code Removal
11
+
12
+ This release removes deprecated legacy code to streamline the codebase and improve maintainability.
13
+
14
+ ### 🗑️ Removed
15
+
16
+ #### Legacy Components
17
+ - **BREAKING**: Removed `java_analyzer.py` module and `CodeAnalyzer` class
18
+ - **BREAKING**: Removed legacy test files (`test_java_analyzer.py`, `test_java_analyzer_extended.py`)
19
+ - **BREAKING**: Removed `CodeAnalyzer` from public API exports
20
+
21
+ #### Migration Guide
22
+ Users previously using the legacy `CodeAnalyzer` should migrate to the new plugin system:
23
+
24
+ **Old Code (No longer works):**
25
+ ```python
26
+ from tree_sitter_analyzer import CodeAnalyzer
27
+ analyzer = CodeAnalyzer()
28
+ result = analyzer.analyze_file("file.java")
29
+ ```
30
+
31
+ **New Code:**
32
+ ```python
33
+ from tree_sitter_analyzer.core.analysis_engine import get_analysis_engine
34
+ engine = get_analysis_engine()
35
+ result = await engine.analyze_file("file.java")
36
+ ```
37
+
38
+ **Or use the CLI:**
39
+ ```bash
40
+ tree-sitter-analyzer file.java --advanced
41
+ ```
42
+
43
+ ### 🔄 Changed
44
+
45
+ #### Test Suite
46
+ - **Updated**: Test count reduced from 1216 to 1126 tests (removed 29 legacy tests)
47
+ - **Updated**: All README files updated with new test count
48
+ - **Updated**: Documentation examples updated to use new plugin system
49
+
50
+ #### Documentation
51
+ - **Updated**: `CODE_STYLE_GUIDE.md` examples updated to use new plugin system
52
+ - **Updated**: All language-specific README files updated
53
+
54
+
55
+
56
+ ### ✅ Benefits
57
+
58
+ - **Cleaner Codebase**: Removed duplicate functionality and legacy code
59
+ - **Reduced Maintenance**: No longer maintaining two separate analysis systems
60
+ - **Unified Experience**: All users now use the modern plugin system
61
+ - **Better Performance**: New plugin system is more efficient and feature-rich
62
+
63
+ ---
64
+
65
+ ## [0.5.0] - 2025-08-03
66
+
67
+ ### 🌐 Complete Internationalization Release
68
+
69
+ This release celebrates the completion of comprehensive internationalization support, making Tree-sitter Analyzer accessible to a global audience.
70
+
71
+ ### ✨ Added
72
+
73
+ #### 🌍 Internationalization Support
74
+ - **NEW**: Complete internationalization framework implementation
75
+ - **NEW**: Chinese (Simplified) README ([README_zh.md](README_zh.md))
76
+ - **NEW**: Japanese README ([README_ja.md](README_ja.md))
77
+ - **NEW**: Full URL links for PyPI compatibility and better accessibility
78
+ - **NEW**: Multi-language documentation support structure
79
+
80
+ #### 📚 Documentation Enhancements
81
+ - **NEW**: Comprehensive language-specific documentation
82
+ - **NEW**: International user guides and examples
83
+ - **NEW**: Cross-language code examples and usage patterns
84
+ - **NEW**: Global accessibility improvements
85
+
86
+ ### 🔄 Changed
87
+
88
+ #### 🌐 Language Standardization
89
+ - **ENHANCED**: All Japanese and Chinese text translated to English for consistency
90
+ - **ENHANCED**: CLI messages, error messages, and help text now in English
91
+ - **ENHANCED**: Query descriptions and comments translated to English
92
+ - **ENHANCED**: Code examples and documentation translated to English
93
+ - **ENHANCED**: Improved code quality and consistency across all modules
94
+
95
+ #### 🔗 Link Improvements
96
+ - **ENHANCED**: Relative links converted to absolute URLs for PyPI compatibility
97
+ - **ENHANCED**: Better cross-platform documentation accessibility
98
+ - **ENHANCED**: Improved navigation between different language versions
99
+
100
+ ### 🔧 Fixed
101
+
102
+ #### 🐛 Quality & Compatibility Issues
103
+ - **FIXED**: Multiple test failures and compatibility issues resolved
104
+ - **FIXED**: Plugin architecture improvements and stability enhancements
105
+ - **FIXED**: Code formatting and linting issues across the codebase
106
+ - **FIXED**: Documentation consistency and formatting improvements
107
+
108
+ #### 🧪 Testing & Validation
109
+ - **FIXED**: Enhanced test coverage and reliability
110
+ - **FIXED**: Cross-language compatibility validation
111
+ - **FIXED**: Documentation link validation and accessibility
112
+
113
+ ### 📊 Technical Achievements
114
+
115
+ #### 🎯 Translation Metrics
116
+ - **COMPLETED**: 368 translation targets successfully processed
117
+ - **ACHIEVED**: 100% English language consistency across codebase
118
+ - **VALIDATED**: All documentation links and references updated
119
+
120
+ #### ✅ Quality Metrics
121
+ - **PASSING**: 222 tests with improved coverage and stability
122
+ - **ACHIEVED**: 4/4 quality checks passing (Ruff, Black, MyPy, Tests)
123
+ - **ENHANCED**: Plugin system compatibility and reliability
124
+ - **IMPROVED**: Code maintainability and international accessibility
125
+
126
+ ### 🌟 Impact
127
+
128
+ This release establishes Tree-sitter Analyzer as a **truly international, accessible tool** that serves developers worldwide while maintaining the highest standards of code quality and documentation excellence.
129
+
130
+ **Key Benefits:**
131
+ - 🌍 **Global Accessibility**: Multi-language documentation for international users
132
+ - 🔧 **Enhanced Quality**: Improved code consistency and maintainability
133
+ - 📚 **Better Documentation**: Comprehensive guides in multiple languages
134
+ - 🚀 **PyPI Ready**: Optimized for package distribution and discovery
135
+
136
+ ## [0.4.0] - 2025-08-02
137
+
138
+ ### 🎯 Perfect Type Safety & Architecture Unification Release
139
+
140
+ This release achieves **100% type safety** and complete architectural unification, representing a milestone in code quality excellence.
141
+
142
+ ### ✨ Added
143
+
144
+ #### 🔒 Perfect Type Safety
145
+ - **ACHIEVED**: 100% MyPy type safety (0 errors from 209 initial errors)
146
+ - **NEW**: Complete type annotations across all modules
147
+ - **NEW**: Strict type checking with comprehensive coverage
148
+ - **NEW**: Type-safe plugin architecture with proper interfaces
149
+ - **NEW**: Advanced type hints for complex generic types
150
+
151
+ #### 🏗️ Unified Architecture
152
+ - **NEW**: `UnifiedAnalysisEngine` - Single point of truth for all analysis
153
+ - **NEW**: Centralized plugin management with `PluginManager`
154
+ - **NEW**: Unified caching system with multi-level cache hierarchy
155
+ - **NEW**: Consistent error handling across all interfaces
156
+ - **NEW**: Standardized async/await patterns throughout
157
+
158
+ #### 🧪 Enhanced Testing
159
+ - **ENHANCED**: 1216 comprehensive tests (updated from 1283)
160
+ - **NEW**: Type safety validation tests
161
+ - **NEW**: Architecture consistency tests
162
+ - **NEW**: Plugin system integration tests
163
+ - **NEW**: Error handling edge case tests
164
+
165
+ ### 🚀 Enhanced
166
+
167
+ #### Code Quality Excellence
168
+ - **ACHIEVED**: Zero MyPy errors across 69 source files
169
+ - **ENHANCED**: Consistent coding patterns and standards
170
+ - **ENHANCED**: Improved error messages and debugging information
171
+ - **ENHANCED**: Better performance through optimized type checking
172
+
173
+ #### Plugin System
174
+ - **ENHANCED**: Type-safe plugin interfaces with proper protocols
175
+ - **ENHANCED**: Improved plugin discovery and loading mechanisms
176
+ - **ENHANCED**: Better error handling in plugin operations
177
+ - **ENHANCED**: Consistent plugin validation and registration
178
+
179
+ #### MCP Integration
180
+ - **ENHANCED**: Type-safe MCP tool implementations
181
+ - **ENHANCED**: Improved resource handling with proper typing
182
+ - **ENHANCED**: Better async operation management
183
+ - **ENHANCED**: Enhanced error reporting for MCP operations
184
+
185
+ ### 🔧 Fixed
186
+
187
+ #### Type System Issues
188
+ - **FIXED**: 209 MyPy type errors completely resolved
189
+ - **FIXED**: Inconsistent return types across interfaces
190
+ - **FIXED**: Missing type annotations in critical paths
191
+ - **FIXED**: Generic type parameter issues
192
+ - **FIXED**: Optional/Union type handling inconsistencies
193
+
194
+ #### Architecture Issues
195
+ - **FIXED**: Multiple analysis engine instances (now singleton)
196
+ - **FIXED**: Inconsistent plugin loading mechanisms
197
+ - **FIXED**: Cache invalidation and consistency issues
198
+ - **FIXED**: Error propagation across module boundaries
199
+
200
+ ### 📊 Metrics
201
+
202
+ - **Type Safety**: 100% (0 MyPy errors)
203
+ - **Test Coverage**: 1216 passing tests
204
+ - **Code Quality**: World-class standards achieved
205
+ - **Architecture**: Fully unified and consistent
206
+
207
+ ### 🎉 Impact
208
+
209
+ This release transforms the codebase into a **world-class, type-safe, production-ready** system suitable for enterprise use and further development.
210
+
8
211
  ## [0.3.0] - 2025-08-02
9
212
 
10
213
  ### 🎉 Major Quality & AI Collaboration Release
@@ -76,11 +76,11 @@ def analyze_file(file_path: str, language: Optional[str] = None) -> AnalysisResu
76
76
  """Analyze a code file and return results."""
77
77
  pass
78
78
 
79
- class CodeAnalyzer:
79
+ class JavaElementExtractor:
80
80
  def __init__(self, config: Dict[str, Any]) -> None:
81
81
  self.config = config
82
-
83
- def process(self, content: str) -> List[CodeElement]:
82
+
83
+ def extract_functions(self, tree: Tree, source_code: str) -> List[Function]:
84
84
  return []
85
85
  ```
86
86
 
@@ -133,18 +133,19 @@ def extract_functions(source_code: str, language: str) -> List[Function]:
133
133
  ### Test Structure
134
134
 
135
135
  ```python
136
- class TestCodeAnalyzer:
137
- """Test suite for CodeAnalyzer class."""
138
-
139
- def test_analyze_java_file_success(self):
140
- """Test successful analysis of Java file."""
136
+ class TestJavaPlugin:
137
+ """Test suite for Java plugin analysis."""
138
+
139
+ async def test_analyze_java_file_success(self):
140
+ """Test successful analysis of Java file using new plugin system."""
141
141
  # Arrange
142
- analyzer = CodeAnalyzer()
142
+ from tree_sitter_analyzer.core.analysis_engine import get_analysis_engine
143
+ engine = get_analysis_engine()
143
144
  file_path = "examples/Sample.java"
144
-
145
+
145
146
  # Act
146
- result = analyzer.analyze_file(file_path)
147
-
147
+ result = await engine.analyze_file(file_path)
148
+
148
149
  # Assert
149
150
  assert result is not None
150
151
  assert result.language == "java"
@@ -21,7 +21,7 @@ uv run python -c "import tree_sitter_analyzer; print('Setup OK')"
21
21
  ### Running Tests
22
22
 
23
23
  ```bash
24
- # Run all tests (1283+ tests)
24
+ # Run all tests (1216+ tests)
25
25
  pytest tests/ -v
26
26
 
27
27
  # Run with coverage