Skip to content

v0.6.0-codere

Choose a tag to compare

@sergitorres-codere sergitorres-codere released this 19 Oct 04:24
· 49 commits to main since this release

Codanna v0.6.0-codere Release

๐ŸŽ‰ Release Highlights

This release builds on v0.6.0 with critical C# improvements, Windows compatibility fixes, and new benchmark support.

๐Ÿ”ง Critical Fixes

C# Import Extraction Fixed

  • Major improvement: C# parser now correctly extracts imports (0 โ†’ 932 imports on test project)
  • Resolution rate improved from 5.8% to 50% (8.6x improvement)
  • Enables proper cross-file symbol resolution and extension method tracking
  • Extension methods like HttpClient.GetFromJsonAsync() now tracked correctly

Windows Platform Compatibility

  • Fixed path separator issues in tests
  • Cross-platform file:// URL handling
  • All tests now pass on Windows

Enhanced Static Method Resolution

  • Added fallback resolution for static methods
  • Significantly improves call graph accuracy
  • +80 additional relationships tracked (13% improvement)

โœจ New Features

C# Benchmark Support

# Benchmark with generated code
codanna benchmark csharp

# Benchmark your own file
codanna benchmark csharp --file path/to/file.cs

Performance: 41,910 symbols/second (4.2x faster than target)

Improved C# Parser

  • Generic type parameter stripping for better method resolution
  • Await expression support
  • Constructor call tracking
  • Module path preservation

๐Ÿ“Š Real-World Impact

Tested on large C# codebase (8,197 symbols, 303 files):

Metric Before After Improvement
Imports extracted 0 932 โˆž
Resolution rate 5.8% 50% 8.6x
Relationships tracked 478 632 +32%
Windows tests โŒ Failing โœ… Passing Fixed

๐Ÿš€ Installation

Windows (x64)

# Download the binary from releases
# Add to PATH or use directly
codanna.exe --version

Linux/macOS

# Build from source
cargo build --release

# Or download pre-built binary from releases
chmod +x codanna
./codanna --version

๐Ÿ“ Usage Examples

C# Benchmark

# Generate and benchmark test code
codanna benchmark csharp

# Output:
# Symbols parsed: 1927
# Average time: 45.98ms
# Rate: 41,910 symbols/second
# Performance: โœ“ 4.2x faster than target

Index C# Project

cd /path/to/csharp/project
codanna index .

Search and Track Calls

# Find extension method
codanna mcp search_symbols query:"GetFromJsonAsync" limit:5

# Find all callers (now works with extension methods!)
codanna mcp find_callers "GetFromJsonAsync"

๐Ÿ” What's Changed

Core Improvements

  • Fixed C# import extraction with tree-sitter fallback
  • Added static method resolution fallback
  • Improved generic type handling
  • Enhanced await expression support
  • Module path preservation for namespaces

Platform Support

  • Windows path handling fixed
  • Cross-platform file:// URL support
  • Platform-agnostic test assertions

Testing

  • โœ… 465+ tests passing
  • โœ… Windows compatibility verified
  • โœ… Real-world C# codebase validation

๐Ÿ“ฆ What's Included

  • Windows x64 binary (codanna.exe)
  • Full source code
  • C# example files with comprehensive language coverage
  • Documentation and audit reports

๐Ÿ”— Links

๐Ÿ™ Acknowledgments

Built on top of the excellent work by @bartolli and the codanna project.

Special thanks to:

  • The tree-sitter-c-sharp maintainers
  • The Rust and tree-sitter communities

๐Ÿ“š Documentation

For full documentation, visit the main repository.

Quick Start

# Index your project
codanna index /path/to/project

# Search symbols
codanna mcp search_symbols query:"MyClass"

# Benchmark C# performance
codanna benchmark csharp

C# Specific Features

  • โœ… Import extraction and namespace resolution
  • โœ… Extension method tracking
  • โœ… Generic type support
  • โœ… Async/await pattern support
  • โœ… Static method resolution
  • โœ… Property and field tracking
  • โœ… Interface implementation detection

๐Ÿ› Known Issues

None specific to this release. See the main repository issues for general project issues.

๐Ÿ”ฎ Future Plans

This fork focuses on C# improvements. Future enhancements may include:

  • Additional C# language features
  • Performance optimizations
  • Enhanced MCP tools

For upstream features, see the main repository roadmap.


Version: v0.6.0-codere
Base Version: v0.6.0
Release Date: 2025-10-19
License: Same as upstream (check main repository)

๐Ÿค– Generated with Claude Code