What's New
GWAS Regression (plink_glm)
- Per-variant association testing using plink2's regression engine
- Linear regression for continuous traits, logistic regression for case/control
- Automatic Firth correction when logistic regression fails to converge
- Covariate support (age, sex, PCs, etc.)
- Phenotype and covariate loading from
.psamcolumns or external lists
Filter Pushdown
af_range— filter variants by allele frequency (uses PgrGetCounts, no decompression)ac_range— filter variants by allele countgenotype_range— filter individual genotype values (non-matching set to NULL)- All filters work across variant, genotype, and sample orient modes
Genotype Output Options
orient := 'sample'— one row per sample with genotype array across variantsgenotypes := 'columns'— pivot mode with one column per sample/variantgenotypes := 'list'— LIST(TINYINT) fallback for large cohortsphased := true— haplotype pair output as ARRAY(TINYINT, 2)dosages := true— dosage output supportplinking_max_matrix_elementsconfig option for sample orient memory guard
Performance
- Parallel per-sample accumulation for
plink_missing(sample mode) andplink_score
Platform
- macOS amd64 + arm64 build fix (CMake
-includeflag deduplication) - Windows MinGW CI disabled pending further investigation