Repository navigation
wgsextract-cli v0.6.4
New
- Streamed paired realignment: eligible fresh paired BAM/CRAM inputs feed
FASTQs directly into BWA or BWA-MEM2 instead of writing and rereading gzipped
FASTQs. Pair filtering, fixed batches, duplicate marking and decoded results
stay unchanged. Eligibility is bounded by input size and available memory;
30× whole genomes still use the existing FASTQ-file path, as do cached
or ineligible runs. This is not a whole-genome streaming speed claim. (#257) - Native Windows GATK acceleration: the pinned GKL sidecar supplies native
AVX/OpenMP PairHMM and AVX2 Smith-Waterman for GATK 4.6.2.0, without WSL.
Released-library numerical and tiny HaplotypeCaller parity checks reject
silent Java fallback. Optional GATK dependencies must already be installed.
(#227, #228, #229) - More microarray exports:
- New, separately selectable MyHeritage GSA and Ancestry marker layouts;
older layout IDs are retained. (#210) --formats aadr_1240k,aadr_ho,aadr_1240k+howrites pinned AADR research
panels in PLINK and EIGENSTRAT formats, with documented allele conventions.
(#211)- Opt-in
--formats aadr_2mexports the official AADR v66.p1 2M panel
(2,142,271 sites) as PLINK and EIGENSTRAT. Install its checksum-pinned
metadata explicitly withref aadr --install --ref LIBRARY; extraction
never downloads it, andalldoes not include it. GRCh38 requires an
installed forward chain; 2M CHM13/T2T projection is not supported.
AADR metadata is CC0 1.0; attribution to the Reich Lab, Harvard Dataverse
release 14.0 and Mallick et al. (2024) is retained. (#280, #270) - Native CHM13v2 calling projects to GRCh37/rCRS exports using the exact
original-mitochondrial, masked-Y reference. Other CHM13 reference variants
are rejected; ambiguous mappings remain no-calls. (#219) - Optional
--indel-manifest FORMAT=PATHcalls verified, manifest-defined
insertion/deletion probes, including supported CHM13 alignment input.
It does not infer probe orientation or enable unrestricted indel discovery.
Missing evidence and unsupported probes remain no-calls. (#217, #226)
- New, separately selectable MyHeritage GSA and Ancestry marker layouts;
- Optional microarray quality and identity policies: sample GQ/DP thresholds,
FILTER exclusion, explicit absent-site hom-ref policy and--call-reasons
diagnostics;--strand-ambiguous no-callconservatively masks known A/T and
C/G sites, and--resolve-rsidschecks merged/withdrawn marker identities.
Existing defaults and vendor schemas are unchanged. (#212, #214) - Targeted Y analysis:
extract ydna-bam --pozselects licensed GRCh37/38
Poz Y intervals;extract ydna-vcf --ybrowsecalls installed, verified
GRCh38 yBrowse sites and adds their lineage annotations. Both are opt-in;
yBrowse data requires explicit setup and is never downloaded during calling.
(#249, #258) - Offline QC and coverage:
qc multiqc --input REPORT_OR_DIRECTORY
aggregates FastQC reports with an already-installed MultiQC, without online
services or opening a browser.info calculate-coverage --binsstreams
per-chromosome counts and fractions at depth 0 / 1–3 / 4–7 / 8+, without a
per-base output file. (#265, #247) - Long-run controls: stderr progress heartbeats and optional
--log-file
persistent logs;--tmp-dir DIRECTORYroutes sorting, GATK and realign
staging to a chosen writable volume; opt-in--keep-awakerequests sleep
inhibition for the command's lifetime. (#251, #254, #248) - Optional Ultima GATK interval scattering:
vcf gatk --scatterbounds
independent flow-aware workers by threads and available memory, then gathers
successful intervals in reference order. Serial remains the default; GPU and
non-flow inputs are rejected. (#208) - Extraction and lineage conveniences:
extract unmapped --fastqpreserves
pairs, single-end reads and orphan mates in separate outputs;
lineage y-haplogroup --tree-linksandlineage mt-haplogroup --tree-links
add opt-in lineage-tree links. (#246) - Platform preview: native Windows ARM64 qualification supplies opt-in
packaging and native-only runtime checks, with no Prism, WSL or x64
substitution. Qualified BWA/BWA-MEM2 and bcftools paths are separate from the
unchanged Windows x64 installation. ARM64 packages are not yet included
in published release artifacts or the default lock; ARM64 GATK/GKL and
DeepVariant remain unsupported in this phase. (#272)
Fixes
- Full-human BWA-MEM2 indexing on native Windows: 64-bit reference lengths
and bounded native I/O fix the index truncation above 4 GiB. The installer
now pins checksum-verified bwa-mem2 2.3-wgse_2 fromwindows-tools-8;
the temporary large-reference guard is removed only after native full-human
indexing was verified. Windows builds its own index—no Linux-built index
substitution is needed. (#264, #268, #275) - Resumable, verified downloads: shared HTTP handling extends resumable
partial files and checksum-verified promotion/cache reuse to benchmark and
example downloads. Invalid SHA-256 declarations fail before destination
changes, and failed MD5 checks cannot poison the shared cache. Installer
Pixi downloads are pinned and verified before execution; catalog reference
sequence signatures are checked after indexing. (#260, #252) - Safer recovery and outputs: interrupted reference indexes are detected
and rebuilt through staged, locked publication; malformed BAM/CRAM inputs
fail early. Opt-in--atomic-outputpreserves an existing result when its
replacement fails, without changing default provenance headers. (#256) - Windows cancellation: Ctrl+C remains responsive while GATK runs, and
launcher cleanup terminates registered Java descendants instead of leaving
them running after cancellation. (#263, #269) - Dependency preflight: optional environments are validated, not installed
at runtime; missing dependencies report the explicit locked install command.
Unsupported Linux ARM64 default installations fail early rather than
attempting an unusable environment. (#245, #255) - Clearer resource and reference advice: Ultima BWA memory estimates account
for read length, thread count and Linux cgroup limits without silently changing
requested threads. Reference errors name the matching library install command;
VEP uses canonical--assemblywording while retaining its deprecated alias.
Realign no longer prints misleading fixed per-stage hour estimates. (#224,
#246, #260, #238)
Validated: Linux + native Windows small suites; chr20 BWA on both and
BWA-MEM2 on Linux: decoded alignments/SNPs/indels EXACT versus v0.6.3, streaming
confirmed; native Windows full-human index 5/5 Linux goldens EXACT.
Scientific gate 0cac0eb and native x64 small-suite delta gate a7bdb2f.
Known issues
- DeepVariant can fail hours into a run on CRAM 3.1 inputs with
Failure to decode slice/DATA_LOSS: Failed to parse SAM record. The
CRAM is valid; DeepVariant images (including 1.10.0) embed htslib 1.18,
whose SSE4 rANS decoder has an upstream bug (samtools/htscodecs#102, fixed
in htslib 1.19). CRAM 3.1 is the default for CRAMs written by samtools 1.22+,
including wgsextract's. Workaround: convert the input to CRAM 3.0 first,
e.g.samtools view -C --output-fmt-option version=3.0 -T REF -o in.v30.cram in.cram && samtools index in.v30.cram,
or use BAM. An automatic fix is planned for v0.6.5. (#283)
Full changes: v0.6.3...v0.6.4