mirror of
https://github.com/metabarcoding/obitools4.git
synced 2026-03-25 13:30:52 +00:00
This release focuses on improving build reliability, memory efficiency for large datasets, and portability of Linux binaries. ### Static Linux Binaries - Linux binaries are now built with static linking using musl, eliminating external runtime dependencies and ensuring portability across distributions. ### Memory-Aware Batching - Users can now control memory usage during processing with the new `--batch-mem` option, specifying limits such as 128K, 64M, or 1G. - Batching logic now respects both size and memory constraints: batches are flushed when either threshold is exceeded. - Conservative memory estimation for sequences helps avoid over-allocation, and explicit garbage collection after large batch discards reduces memory spikes. ### Build System Improvements - Upgraded to Go 1.26 for improved performance and toolchain stability. - Fixed cross-compilation issues by replacing generic include paths with architecture-specific ones (x86_64-linux-gnu and aarch64-linux-gnu). - Streamlined macOS builds by removing special flags, using standard `make` targets. - Enhanced error reporting during build failures: logs are now shown before cleanup and exit. - Updated install script to correctly configure GOROOT, GOPATH, and GOTOOLCHAIN, with visual progress feedback for downloads. All batching behavior is non-breaking and maintains backward compatibility while offering more predictable resource usage on large datasets.
399 B
399 B