mirror of
https://github.com/metabarcoding/obitools4.git
synced 2026-03-25 13:30:52 +00:00
This release includes significant improvements to resource management, build reliability, and portability. ### Memory-Aware Batching (Backward Compatible) - Added configurable batch size and memory limits to prevent excessive memory usage during large dataset processing. - Introduced a new `--batch-mem` command-line option (e.g., `128K`, `64M`, `1G`) to enable adaptive batching based on estimated sequence memory footprint. - Internal batching logic now flushes batches when either size or memory thresholds are exceeded, ensuring predictable behavior. - Conservative memory estimation and explicit garbage collection after large batch discards improve resource efficiency. ### Linux Build Enhancements - Enabled static linking for Linux binaries using musl, producing self-contained executables with no external runtime dependencies. - Refined cross-compilation toolchain to use architecture-specific CGO header paths, improving reliability across target architectures. - Switched Linux builds to use Docker-based static compilation for consistency and reproducibility. ### Build System & Toolchain Improvements - Upgraded Go toolchain to 1.26, with updated dependencies including golang.org/x/net v0.38.0. - Fixed Makefile quoting for LDFLAGS to handle paths containing spaces. - Enhanced build error handling to display logs before cleanup on failure. - Improved install script with correct environment variable setup (GOROOT, GOPATH, GOTOOLCHAIN) and added progress indicators for downloads. Note: All batching behavior remains non-breaking, with default constraints ensuring safe processing of large datasets.
399 B
399 B