Skip to content

CHANGELOG

Notable changes to agricola (starting with v0.9.0) will be documented here.

v0.25.1 - 2026-09-05

Fixed

  • Corrected local ancestry-conditioned binary score test to use the covariate-only weights for projecting against covariates
  • Corrected heterogeneous score-test effect estimates to account for covariance
  • Corrected ancestry-specific score statistics to account for covariance
  • Made local-ancestry rank detection aware of phenotype missingness
  • Made quantitative residual variance estimates use effective rank
  • Improved handling of zero-variation ancestry and genotype columns

Changed

  • Use masked linear solves in place of explicit inversions
  • Clarified behavior with docstrings and comments

[v0.24.2] - 2026-09-02

Added

  • Decouple step 1 from local ancestry data

Fixed

  • Base collinearity masking on machine tolerance
  • Preserve orthonormality of covariate projection in step 2

v0.23.1 - 2026-09-02

Fixed

  • Prevent NaNs from rank-deficient step2 covariate projection

v0.23.0 - 2026-09-02

Added

  • Introduced "lowest" memory mode, sequential of penalties in folds in step 1
  • Specify memory option with memory-mode (standard, low, lowest)

Fixed

  • Broadcasting errors in step 1 for binary traits
  • Treat lowmem options as static argnames in JAX

v0.22.0 - 2026-09-01

Added

  • lowmem option in step 1 to reduce memory usage at the cost of speed

v0.21.0 - 2026-08-26

Fixed

  • Improved logistic regression convergence checks
  • Use gradient-based convergence
  • Include the ridge penalty in the logistic gradient.
  • Guard convergence against empty masks, non-finite values, and zero normalization.
  • Apply the safer convergence logic to step 2 logistic regression.
  • Reduce the default logistic ridge iteration limit to 20.
  • Fix bug with JAX searching for cuda devices when the user specifies a CPU backend.

v0.20.0 - 2026-08-25

Changed

  • Reorganized the package into pipeline, io, models, statistics, numerical, and validation modules.
  • Split CLI data loading, formatting, and runtime setup into dedicated helpers
  • Centralized shared quantitative and binary association-statistic kernels

Added

  • Cauchy Combination Test
  • Report convergence for logistic regression

v0.19.0 - 2026-07-31

Fixed

  • Incorrect form of linear hypothesis test for Tractor estimates

v0.18.0 - 2026-07-31

Fixed

  • Correct bug in calculating local ancestry dosages
  • Use max absolute deviation in coefficients as criterion for logistic regression convergence
  • Use correct QR decomp for covariates

v0.17.0 - 2026-07-28

Fixed

  • Fit y ~ covar + offset(pgs) for bt traits. This null model should follow regenie. Previously, fit y ~ covar + pgs for null model. Before that (<= 0.15.0), fit y ~ covar then added offset.

v0.16.0 - 2026-07-27

Added

  • Allow step2 to be run without step1 predictions

v0.15.0 - 2026-07-27

Fixed

  • Fit y ~ pgs + covar for bt traits. Previously summed covar and pgs offsets, leading to conservative tests

Added

  • Allow chromosomes in step2 not included in step 1

v0.14.1 - 2026-07-22

Fixed

  • Bug in step2 CLI only using the last chromosome
  • Do not log warning about backend when none is specified

v0.14.0 - 2026-07-22

Added

  • Option to specify JAX backend
  • Improved speed for level 1 logistic regression by vmapping across folds and blocks in level1 logistic regression

v0.13.0 - 2026-07-21

Added

  • Support for using subset of step1 samples in step2

v0.12.0 - 2026-07-21

Added

  • Welcome message
  • Lower memory, slightly improved speed for imputed traits in step 2

Fixed

  • Bug in calculating residuals for _qt_lanc_wald
  • Use convergence instead of fixed iterations for logistic regression

v0.11.0 - 2026-07-17

Added

  • Options to control output partitioning and write frequency
  • Improved performance in step 1 using Cholesky decomposition
  • Option to prune blocks in a dataset so that n_variants (mod block_size) = 0

Fixed

  • Force tab or space delim in pheno/covar files to fix silent errors when reading missing data

v0.10.0 - 2026-07-15

Added

  • Tractor-style ancestry-specific p-values
  • Option for double precision
  • Simplified step 2 output (single parquet dir with rolling output files)
  • Logger

Fixed

  • Improved numerical accuracy for edge cases in step 2 tests
  • Failure to correctly mask likelihoods for missing samples in LRT