Release Candidate 2 - C# Support & Infrastructure Improvements
Breaking Changes
TypeScript/Node.js Package Restructuring:
- NPM package renamed from
kreuzbergto@kreuzberg/node(scoped package) - Platform-specific packages now use
@kreuzberg/{platform}naming scheme - TypeScript source consolidated into
crates/kreuzberg-node(merged with native bindings) - Migration: Replace
import { ... } from 'kreuzberg'withimport { ... } from '@kreuzberg/node' - See Migration Guide for details
New Features
C#/.NET Bindings:
- Complete C# bindings using .NET 9+ Foreign Function & Memory API
- Native FFI bridge via
kreuzberg-ffiC library - Supports .NET 9+ on Linux, macOS, and Windows
- Package:
Kreuzbergon NuGet - Full feature parity with other language bindings
Documentation Improvements:
- New v3 documentation site with MkDocs
- Comprehensive multi-language code examples for all 7 supported languages
- API reference documentation for all bindings
- Migration guides and tutorials
Bug Fixes
CI/CD Fixes:
- Fixed all CI workflow failures (ONNX Runtime, Maven dependencies, path triggers)
- Fixed benchmark harness configuration validation (single-file mode)
- Added ONNX Runtime installation to all relevant CI workflows
- Updated Maven plugins to latest compatible versions with enforcer plugin
Core Library Fixes:
- Added lock poisoning recovery to embeddings model cache
- Improved Tesseract tessdata path detection for Linux systems
- Fixed Python async test configuration (pytest-asyncio)
- Resolved Rust formatting issues with edition 2024 let-chain syntax
Benchmark Harness Improvements:
- Added comprehensive adapter registration diagnostics
- Fixed Tesseract benchmark path resolution
- Improved Python async benchmark output with performance metrics
- Added missing `--max-concurrent` parameter validation
Code Quality:
- Fixed Python linting issues (ruff complexity, mypy type parameters)
- Resolved all clippy warnings
- Fixed C# generated file formatting
- Improved error handling across all bindings
Developer Experience
Build System:
- Go FFI library and Ruby native extension build fixes
- Improved build reproducibility
- Better error messages during compilation
Testing:
- 268+ Rust tests passing
- 13/13 Java tests passing
- 32/32 benchmark harness tests passing
- Fixed 27 Python async test failures
- Unblocked 250+ tests across all language bindings