What's Changed
- ci: add publish dry-run to catch release-blocking bugs pre-merge by @nh13 in #312
- fix(consensus): gate methylation-dependent filter fns behind simplex by @nh13 in #313
- chore(deps): bump the all-actions group across 1 directory with 4 updates by @dependabot[bot] in #315
- fix(fgumi): make root crate build cleanly with --no-default-features by @nh13 in #314
- refactor: validate and consolidate SAM tag identifiers via SamTag by @nh13 in #316
- fix(group,dedup): deterministic MoleculeId numbering via opt-in MI Assign stage by @nh13 in #319
- docs(readme): use absolute URLs for logo images by @nh13 in #324
- refactor: extract fgumi-bam-io and fgumi-sort workspace crates by @nh13 in #323
- fix: address remaining review feedback from PR #323 by @nh13 in #325
- fix(group,dedup,downsample)!: require SS:template-coordinate by @nh13 in #337
- fix(bgzf): honor compression level 0 in InlineBgzfCompressor by @nh13 in #340
- refactor(consensus,correct): migrate hand-rolled rejects writers to first-class secondary_output by @nh13 in #332
- perf(group): cache UMI position to drop redundant aux scan (#334) by @nh13 in #343
- perf+ux: follow-ups from the agilent sort profile by @nh13 in #344
- refactor(codec): typed CodecConsensusError replaces substring matching by @nh13 in #342
- perf(progress): fast-path log_if_needed via cached next threshold by @nh13 in #345
- fix(duplex-metrics): drop dense (max_ab × max_ba) grid that OOMs on cfDNA hot spots by @nh13 in #359
- docs(zipper): recommend uncompressed BAM input for streaming pipelines by @nh13 in #362
- feat(sort): zstd as the default temp-spill codec by @nh13 in #341
- perf(sort): share SegmentedBuf across in-memory sort chunks via Arc by @nh13 in #350
- perf(decode,dedup): single-pass aux scan captures UMI position (#334) by @nh13 in #351
- test: in-process Command::execute for Phase 1 commands (#352) by @nh13 in #353
- test: in-process Command::execute for Phase 2 commands (#352) by @nh13 in #354
- refactor(compare,fastq) + test: in-process Command::execute for Phase 3 (#352) by @nh13 in #355
- test: in-process Command::execute for Phase 4 commands (#352) by @nh13 in #356
- test: in-process follow-ups from Opus/Sonnet review of #352 by @nh13 in #357
- refactor(duplex-metrics): replace dead Binomial::new Err arm with expect by @nh13 in #363
- fix(compression): accept --compression-level 0 for uncompressed BAM (#360) by @nh13 in #361
- chore(deps): bump the all-actions group across 1 directory with 4 updates by @dependabot[bot] in #349
- perf(bgzf): bypass libdeflater for deflate stored blocks by @tfenne in #366
- refactor(consensus): delegate ConsensusOutput heap-size estimate to owning type by @nh13 in #368
- fix(compare): use 128-bit composite hash for read-name keys by @nh13 in #369
- refactor(sort): demote algorithm-internal info! logs to debug by @nh13 in #367
- feat(group): --parallel-group-min-templates with per-strategy auto thresholds by @nh13 in #371
- ci: add codecov.yml with a project coverage threshold by @nh13 in #374
- feat(sort): variable-width template-coordinate sort key, zero-copy merge, and slimmer arena by @nh13 in #375
- chore: remove orphaned public-api.txt snapshots by @nh13 in #376
- ci: bump codecov-action to v6.0.2 to fix Codecov upload GPG failure by @nh13 in #383
- feat(memory): add host-aware --max-memory to pipeline commands by @nh13 in #381
- chore(deps): bump the all-actions group across 1 directory with 2 updates by @dependabot[bot] in #384
- chore(deps): bump the all-cargo-deps group across 1 directory with 14 updates by @dependabot[bot] in #373
- fix(sort): carry library & MI in the completely-unmapped template-coordinate key by @nh13 in #386
- perf(deps): pin flate2 zlib-rs backend to restore fast FASTQ decompression by @nh13 in #387
- chore: release v0.3.0 by @nh13 in #309
- ci(publish): fix crate publish order and guard topological drift by @nh13 in #388
New Contributors
Full Changelog: v0.2.0...v0.3.0