[4.2.8] - 2026-02-02
Fixed
Python Bindings
- ChunkingConfig serde serialization: Fixed
config_to_json()andconfig_get_field()outputtingmax_characters/overlapinstead ofmax_chars/max_overlapby usingserde(rename)instead ofaliasfor backwards-compatible serialization
Java Bindings
- ARM64 SIGBUS crash in
kreuzberg_get_error_details: Addedkreuzberg_get_error_details_ptr()returning a heap-allocated pointer instead of struct-by-value, fixing ABI mismatch in Java Panama FFI on ARM64 architectures - E2E test compilation errors: Updated
E2EHelpersto usegetMetadataMap()andgetElementType().name()matching current API
Ruby Bindings
rb_sysbuild dependency: Movedrb_sysfrom development to runtime dependency in gemspec so bundler installs it before compiling the native extension, fixingLoadError: cannot load such file -- rb_sys/mkmffor end users- Flaky concurrent extraction test: Prevented
Tempfilegarbage collection in thread safety test by keeping references alive during concurrent extraction
FFI
- Added
kreuzberg_free_error_details(): New function to properly free heap-allocatedCErrorDetailsstructs and their internal string fields
Changed
CI
- Rust test parallelization: Removed
--test-threads=1from unit test script, enabling parallel test execution across 80+ test files - Rust CI timeout: Reduced job timeout from 180 to 60 minutes