mirror of
https://github.com/metabarcoding/obitools4.git
synced 2026-03-25 05:20:52 +00:00
This release introduces significant improvements to build reliability and performance, alongside key parsing enhancements for sequence data. ### Build & Installation Improvements - Added support for parallel compilation via `-j/--jobs` option in both the Makefile and install script, enabling faster builds on multi-core systems. The default remains single-threaded for safety. - Enhanced Makefile with `.DEFAULT_GOAL := all` for consistent behavior and a documented `help` target. - Replaced fragile file operations with robust error handling, clear diagnostics, and automatic preservation of the build directory on copy failures to aid recovery. ### Rope-Based Parsing Enhancements (from 4.4.20) - Introduced direct rope-based parsers for FASTA, EMBL, and FASTQ formats, improving memory efficiency for large files. - Added U→T conversion support during sequence extraction and more reliable line ending detection. - Unified rope scanning logic under a new `ropeScanner` for better maintainability. - Added `TakeQualities()` method to BioSequence for more efficient handling of quality data. ### Bug Fixes (from 4.4.20) - Fixed `CompressStream` to correctly respect the `compressed` variable. - Replaced ambiguous string splitting utilities with precise left/right split variants (`LeftSplitInTwo`, `RightSplitInTwo`). ### Release Tooling (from 4.4.20) - Streamlined release process with modular targets (`jjpush-notes`, `jjpush-push`, `jjpush-tag`) and AI-assisted note generation via `aichat`. - Improved versioning support via the `VERSION` environment variable in `bump-version`. - Switched PR submission from raw `jj git push` to `stakk` for consistency and reliability. Note: This release incorporates key enhancements from 4.4.20 that impact end users, while focusing on build robustness and performance gains.