Skip to content

Latest commit

 

History

History
287 lines (207 loc) · 10.6 KB

RELEASE-NOTES.md

File metadata and controls

287 lines (207 loc) · 10.6 KB

For contributions see contributors and commits.

ChangeLog v0.98.6 (2021/--/--)

ChangeLog v0.98.5 (2021/08/25)

  • Changed banner to show 'Copyright (C) 2012–2021, Xiang Zhou, Pjotr Prins and team'
  • Fixed tests for new Debian stable release - mostly roundoff confusion
  • Documented -lmm 9 which adds additive effect to -lmm 2
  • Fix of GSL ERROR: function value is not finite in brent.c at line 202 errno 9, see #210
  • Added profiler support in Guix profile and make file. Profiling issue #243
  • Added new test suite to replace shunit2 scripts - should make it more robust for different architectures, see github issues #242 and #247.
  • Fixed iter could go out of bounds in CalcLambda, see 43bbfda6253d1c5b88cb4ef5c092eb8be716592f
  • Make sure P_yy=0 does not fail

MD5SUM of static binary:

f5e90535ff6a36867dcb5f6b0fb24135  gemma-0.98.5

ChangeLog v0.98.4 (2021/01/29)

Maintenance release

  • Fix error on free with randomizer that segfaulted, see #239
  • Moved travis-ci.org to travis-ci.com
  • GEMMA builds on ARM and other architectures, see #189 and https://buildd.debian.org/status/package.php?p=gemma (thanks @tillea)
  • Fixed static build with 00480e8549987b6cae7100b28bcead2a2d501177 - requires gfortran path for OpenBLAS
  • Updated README's and Manual
  • Added -lmm 9 switch which shows beta/se with lmle and plrt, see #237

ChangeLog v0.98.3 (2020/11/28)

Maintenance release

  • Fix Travis build with gcc 5.5 (OpenBLAS related round-offs)
  • Fix Travis build on OSX (brew related)
  • GEMMA installs on FreeBSD (thanks @outpaddling)
  • Added github issue templates to ascertain the github issue tracker is only used for reporting bugs
  • Added more debug output creating the GRM
  • Remove info on the floating point version (gemmaf).
  • Sane randomization handling: GEMMA now honours the -seed option (mostly for bslmm). It also allows GSL_RNG_SEED and GSL_RNG_TYPE to be used. See the docs.
  • The tests now use a fixed seed for the randomizer

A docker binary that runs on Linux, MaxOS and Windows can be downloaded from

http://ipfs.genenetwork.org/ipfs/Qmaq1q73ox53ykKdRF6tYDXL9bEKJQfnGCqBxFdo1fcYPb/gemma-0.98.3-AMD64-Guix-docker-release.tgz

After loading the image into Docker, run with something like

docker run -w /run -v ${PWD}:/run ed5bf7499691 gemma -gk -bfile example/mouse_hs1940

ChangeLog v0.98.2 (2019/05/28)

GCC 10.1 fix release

  • Fix build on gcc 10.1 (mostly BLAS include files)
  • Removed Eigenlib dependencies and modifed test results to match openblas output
  • Also tested with guix gcc-toolchain@8.4.0 gdb gsl openblas zlib bash ld-wrapper perl vim which

ChangeLog v0.98.1 (2018/12/10)

Bug fix release

  • Fixes regression on Plink analysis with missing data #188 (thank you @voichek)

To install the image, download and

md5sum gemma-0.98.1.gz
8e7eda8091e4c4e587d91cf9d94ed147  gemma-0.98.1.gz
gzip -d gemma-0.98.1.gz
chmod a+x gemma-0.98.1
./gemma-0.98.1

GEMMA 0.98.1 (2018-12-10) by Xiang Zhou and team (C) 2012-2018

type ./gemma -h [num] for detailed help

The binary images were reproducibly built on x86_64 with

Generation 1    Nov 03 2018 12:30:38    (current)
  guix ff34941
    repository URL: https://git.savannah.gnu.org/git/guix.git
    commit: ff349415b27cc764fd7168ef35ca76c3b8b05889

guix environment -C guix --ad-hoc gcc gdb gfortran:lib gsl eigen openblas zlib bash ld-wrapper perl
make clean && make -j 16 && make fast-check
for x in `ldd bin/gemma|cut -d ' ' -f 3` ; do realpath $x ; done
/gnu/store/kf8pva0pgwg6yrcpa52iri293j8fc56q-gsl-2.5/lib/libgsl.so.23.1.0
/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libz.so.1.2.11
/gnu/store/zpm494j02m6snmvcjxcdqxkgwx43nkmj-openblas-0.3.2/lib/libopenblasp-r0.3.2.so
/gnu/store/4ik1aw34nxs4372xlimvnaq2ilhclwpw-gfortran-8.2.0-lib/lib/libgfortran.so.5.0.0
/gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libquadmath.so.0.0.0
/gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libstdc++.so.6.0.25
/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libm-2.27.so
/gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libgcc_s.so.1
/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libpthread-2.27.so
/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libc-2.27.so
/gnu/store/1yym4xrvnlsvcnbzgxy967cg6dlb19gq-gfortran-5.5.0-lib/lib/libgfortran.so.3.0.0

# build static image
make clean && make WITH_GFORTRAN=1 static -j 16 && make check

ChangeLog v0.98 (2018/09/28)

With the v0.98 release GEMMA has stabilized, is faster than ever, and contains extensive error checking. This release contains quite a few bug fixes, hardware-based floating point checking and speedups.

  • GEMMA is faster than ever #136
  • Fixes log standing 'GSL ERROR: matrix is singular in lu.c at line 266' mvlmm regression with correlated phenotypes #179 with https://github.com/genetics-statistics/GEMMA/commit/99527865c00b74a3a48daa2e1e5eb7c71bd861b5 - (thank you @HannahVMeyer and @xiangzhou)
  • Adds x86 hardware based floating point error checking #161, see 70f419673d5d3e49a3eada70c70c2d284b502d7b
  • Provide a static release of GEMMA again for Linux #162
  • Fixes clang++ build on MacOS #160
  • Enforce failed for 0.00 in src/io.cpp at line 1431 in BimbamKin #149
  • -no-check is default now
  • Force SIGINT on error so debuggers can get a stack trace
  • Improved CalcPab functions to not break on division by zero https://github.com/genenetwork/GEMMA/commit/8010061e8af476d66a0ca6fb6d509b36acdb9b9a (thank you @xiangzhou)
  • Add Windows MingW compilation support (thanks @DannyArends)
  • Fully utilizing GNU Guix containers for a build system (see INSTALL.md)
  • Updated manual by @xiangzhou)

Note: This is the last purely C/C++ compilable release because we are integrating faster-lmm-d code for new functionality in the next version. Also we are working on a Python and R interface.

To install the image, download and

md5sum gemma-0.98.gz
875cde6d37fb96014356b15dc77ebf93  gemma-0.98.gz
gzip -d gemma-0.98.gz
chmod a+x gemma-0.98
./gemma-0.98

GEMMA 0.98 (2018-09-28) by Xiang Zhou and team (C) 2012-2018

type ./gemma -h [num] for detailed help

The binary images were reproducibly built on x86_64 with

guix pull -l
Generation 4    Sep 25 2018 10:16:39    (current)
  guix 932839f
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: origin/master
    commit: 932839ff124ff3b0dd3070914fb1c5beec69bf32

guix environment -C guix --ad-hoc gcc gdb gfortran:lib gsl eigen openblas zlib bash ld-wrapper perl
make clean && make -j 16 && make fast-check
for x in `ldd bin/gemma|cut -d ' ' -f 3` ; do realpath $x ; done
  /gnu/store/kf8pva0pgwg6yrcpa52iri293j8fc56q-gsl-2.5/lib/libgsl.so.23.1.0
  /gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libz.so.1.2.11
  /gnu/store/zpm494j02m6snmvcjxcdqxkgwx43nkmj-openblas-0.3.2/lib/libopenblasp-r0.3.2.so
  /gnu/store/4ik1aw34nxs4372xlimvnaq2ilhclwpw-gfortran-8.2.0-lib/lib/libgfortran.so.5.0.0
  /gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libquadmath.so.0.0.0
  /gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libstdc++.so.6.0.25
  /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libm-2.27.so
  /gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libgcc_s.so.1
  /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libpthread-2.27.so
  /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libc-2.27.so
  /gnu/store/1yym4xrvnlsvcnbzgxy967cg6dlb19gq-gfortran-5.5.0-lib/lib/libgfortran.so.3.0.0

# build static image
make clean && make FORCE_STATIC=1 -j 16 && make check

ChangeLog v0.97 (2017/12/19)

This is a massive bug fix release with many improvements.

Speedup of GEMMA by using optimized OpenBlas

  • Binary release with OpenBlas optimization for generic x86_64 and for Intel Haswell
  • Dropped using standard lapack and gslcblas libs
  • Fixed NaN bug with GSL2 and made recent libraries the default
  • Minimized use of Eigenlib libraries (single threaded and slow compilation)
  • -legacy switch provides v0.96 behaviour (incl. eigenlib)

Added Leave One Chromosome Out (LOCO) support for Bimbam (K and LMM)

Added checks for matrices

  • #72 and #45 implements
    1. Fail if K has negative eigen values
    2. Fail if K is not symmetric
    3. Fail if K is not positive definite
    4. Warn in eigen values are very small
    5. Warn if K is ill conditioned
  • Check for NaN values

Added test framework and unit tests

  • Added integration and unit tests, as well as Travis-CI support
  • Improved debug information and testing of input files

Other

  • #81 printing out beta and se(beta) under -lmm 2 as well as logl_H1
  • Improved README and INSTALL docs
  • Added support info and code of conduct
  • Reformatted the full source tree with 3935ba39d30666dd7d4a831155631847c77b70c4
  • Merged LMM computation for Plink and Bimbam formats
  • Fixed progressbar issues
  • #46 removed support for Oxford format
  • Got rid of all compiler warnings
  • Updated copyright banner, info and license information for included software
  • Started a discussion list

See also commits.

GEMMA 0.96.0

  • First stable release.

GEMMA 0.95.2

  • Resolved Issue #36.

GEMMA 0.95.1

  • Created first release of GEMMA 0.95a following request in Issue #33.

GEMMA 0.94.1

  • Fixed a bug (the predict option for multiple phenotype imputation was not recoginzed with PLINK files).

GEMMA 0.94.0

  • Implemented the multivariate linear mixed model.

GEMMA 0.93

  • Implemented the Bayesian sparse linear mixed model.

GEMMA 0.92

  • Fixed a few typos.

  • Now allows for missing values in the covariates file.

  • Included REMLE estimate for lambda in the output .log file.

  • Added small GWAS example dataset

  • Added detailed user manual.

GEMMA 0.91

  • Fixed a bug (BIMBAM annotation file not recognized).

GEMMA 0.90

  • Initial pre-release.

See also https://github.com/genetics-statistics/GEMMA/releases