CHANGELOG
All notable changes to this project are documented in this file.
Tractor v2.6.0 is now available here.
Tractor Workflow, that wraps 3 modules (phasing, local ancestry inference, and Tractor GWAS) is available here.
TractorWorkflow v1.1.0 (requires Tractor >= 2.6.0)
- Tractor Workflow in sync with Tractor v2.6.0
- Removed
--totallinessupport, and added in--logistic_backend,progress_everyarguments. samples_excluded_from_phenotype.txtis replaced withphenotype_samples_not_in_hapdose_files.txtandhapdose_samples_not_in_phenotype_file.txt
TractorWorkflow v1.0.0
- Tractor Workflow first release, in sync with Tractor v1.4.0
Tractor v2.6.0 (2026-07)
Added
- Multi-phenotype mode:
--phenocolaccepts a comma list or a file path. Hapdose files are parsed once and reused across phenotypes saving time on I/O. --logistic_backend {fastglm|glmfit}, defaultfastglm– faster than glm.fit. Refer to Choosing a Logistic Backend in README.md--progress_every N.hapdose_samples_not_in_phenotype_file.txtreport.- Environment banner: R, platform, and all package versions logged per run.
Changed
- BREAKING Output files are suffixed
_<pheno>whenever--phenocolis given. - BREAKING Logistic
tval_anc*renamed tozval_anc*. Values unchanged. - BREAKING
AF_anc*andLAprop_anc*now computed on the complete-case sample, not all samples. - Logistic phenotypes must be coded 0/1; non-binary values are now rejected at startup.
- Samples with any missing covariate are dropped per phenotype.
--nthreadsabove the detected core count warns instead of erroring.- Streaming via persistent connections; gzip is decompressed once.
lm.fit/glm.fitwith Wald inference from the QR decomposition.se_anc*rounded to 6 digits (was 4).- New dependency
fastglm;dplyrandR.utilsno longer required. conda environment is updated to include fastglm now.
Fixed
- Ancestries are paired in numeric order.
Sys.globsorted alphabetically, mis-pairing hapcount/dosage files at 11+ ancestries. - No longer crashes when
--phenocol Xis used and the phenotype file also has a column namedy. - Final chunk holding exactly one SNP no longer crashes (
nSNP %% chunksize == 1). POSis written verbatim; it was space-padded and could render in scientific notation.
Removed
--totallinesargument was retired as files are streamed via persistent connection.
Tractor v1.4.0 (2024-05)
* Added support for compressed (gz) hapcount/dosage and phenotype files.
* Improved file reading efficiency by implementing fread in chunks, mitigating memory errors.
* Implemented parallel processing for regression, resulting in significant speed improvements with multi-core systems.
* Enhanced flexibility in organizing phenotype files:
* Users can specify sample ID column (--sampleidcol), phenotype ID column (--phenocol), and covariate column list (--covarcollist)
* Updated output summary statistics to include SE and t-val, with column names adjusted to adhere to GWAS standards.