ChangeLog

=============================================================
CHANGES AFTER PUBLIC RELEASE OF MERLIN
=============================================================

MERLIN 0.9.9
============

  * Improved Portability. Removed all (void *) to (int) conversions to allow
    compilation on some 64-bit architectures. In addition, provided replacement
    snprintf for architectures with a buggy version in the system library.

  * Improved PDF Graph Layout. Graphs in PedStats now provide better handling 
    of missing data.

  * Fixed Problems With Internal Allele Recoding. The new allele recoding engine,
    introduced in version 0.9.8, did not track allele frequencies of the alleles
    not present in the pedigree file. This could cause Merlin to crash when the 
    --simulate option was used. 

MERLIN 0.9.8
============

  * Basic PDF output. Merlin and Merlin-Regress now produce a simple PDF
    file with one LOD score plot per page when the --pdf option is used. 
    Each trait, chromosome and analysis option is plotted on a separate page. 

  * Pedigree Trimming. Merlin and Merlin-Regress can now remove uninformative
    individuals from pedigrees to speed up analysis. To use this functionality,
    use the --trim command line option.

  * Microsatellite Allele Sizes. Allele numbers are now recoded internally, 
    allowing microsatellite allele sizes to be used in the pedigree file.

  * Extended IBD state information. Extended allele IBD state probabilities,
    which distinguish maternal and paternal allele sharing and provide additional
    information on inbreeding can now be calculated.

  * Multiple Trait Models for Regression Analyses. MERLIN-REGRESS now accepts an
    optional table describing mean, variance and heritability for each trait. This
    facilitates analyses of pedigree files with multiple traits.

  * Founder couple symmetries can be optionally disabled with the --noCoupleBits
    option.

  * For variance components analysis, fixed bug that led to non-invertible
    matrices when the parameter estimated variance components are close to 
    zero. This condition could produce a crash in earlier versions.

  * Fixed bug in Merlin-Regress that caused crashes in families with
    more than 4 pairs of grand-parents with no phenotype or genotype
    data. This condition would produce a crash in earlier versions.

  * Fixed aggressive optimization that could cause the --all option (which lists
    all non-recombinant haplotypes) to miss some haplotype states. Formerly,
    markers were labelled uninformative whenever they implied identical likelihoods
    for all inheritance vectors. This version implements a stricter definition
    that also requires that the same allelic state is implied for each vector.


MERLIN 0.9.3
============

  * Minor source code changes for compatibility with GCC version 3.

  * Horizontal haplotypes are no longer output by default, but 
    require --horizontal flag.

MERLIN 0.9.2
============

  * Public release incorporating changes in versions 0.9.0 and 0.9.1.

MERLIN 0.9.1 
============

  * Added general pedigree regression analysis. This is an early
    implementation of the approach proposed by Sham et al (2002)
    in the AJHG. It is still somewhat slow, but functional. Run
    as a separate program, MERLIN-REGRESS. 

  * Added --horizontal option which selects horizontal haplotype
    layout in [merlin.chr] output file.

  * Stopped Merlin from automatically loading [merlin.freq] allele
    frequency file. To load allele frequencies, the -f filename
    option must be specified explicitly.

  * Added --useCovariates options to support covariates
    in variance components linkage analyses.

  * Fixed bug that led to crashes when the number of alleles in 
    the pedigree exceeded those in the allele frequency file by
    exactly one.

  * Renamed the option --marker-names as --markerNames, for 
    consistency with other two word options, such as --minStep
    and --maxStep.

MERLIN 0.9.0 
============

  * Support for X chromosome incorporated. Runs as a separate
    program, Merlin In X (MINX). 

  * New --frequencies output option saves allele frequencies as
    estimated by merlin in merlin.freq file.

  * New --perFamily output option saves information and NPL 
    scores for individual families in separate files.

  * Quiet output no longer includes warning when markers with
    very low information are skipped.

  * Input pedigree files now checked for the presence of parents 
    with identical sexes. If a pedigree file has more than one 
    formatting problem, Merlin tries to report as many problems
    as possible before stopping.

  * Linkage datafiles where lines end precisely with "<<" or
    ">>" now handled correctly. In previous versions, these lines
    would be rejected by Merlin with an error message.

  * Changed scaling of non-parametric linkage statistics in 
    Simwalk2 interface file.

  * Minor changes in source code to improve portability. 
    Specifically, there are no longer any return statements
    with void arguments or new style type casts. This should
    allow compilation with Sun Workshop C++ compiler.

  * Minor changes in Makefile to improve portability. 
    Specifically, ar and ranlib are now invoked separately to
    allow compilation in Mac OS X systems.

MERLIN 0.8.8
============

  * Fixed problem reading linkage files with liability class
    information. Previous versions printed a spurious warning
    about trailing columns in input pedigree and ignored the
    last column in input.

MERLIN 0.8.7a
=============

  * Families with impossible recombination patterns excluded
    from NPL analyses (previously scored as zero) and variance
    components analyses.

MERLIN 0.8.7
============

  * Merlin now estimates kinship between inbred parents and 
    their offspring (previously assumed to be 0.25).

MERLIN 0.8.6
============

  * Fixed singlepoint so correct marker names are displayed.
    (Problem occurred when --steps, --minStep, --maxStep, and
     --grid, --start and --stop options were introduced)

  * Change optimization default from -O3 to -O2 to avoid
    crashing gcc-2.95.3.

=============================================================
CHANGES BEFORE PUBLIC RELEASE OF MERLIN
=============================================================

MERLIN 0.8.5
============

  * Added --steps, --minStep, --maxStep as well as --grid,
    --start and --stop for fine control of analysis locations.

  * The --steps option now replaces the old -i (steps per
    interval) option.

  * Now includes intermediate output at all markers, even
    those that map at the same location, for --simwalk2
    analyses.

  * Fixed in variance components that resulted in non-
    positive definite matrices in some pedigrees with 
    uninformative grand-parents. 

  * Added pedwipe to MERLIN distribution.

MERLIN 0.8.3
============

  * Check whether recombination fractions or centiMorgan
    distances are provided in linkage datafiles.

MERLIN 0.8.2
============

  * Maintain ordering for markers separate by the recombination
    fractions of zero. Previously, the output order for these
    markers was random. The new version keeps the same order
    as in the linkage datafile (linkage format) or mapfile
    (qtdt format)

  * Output IBD probabilities with 5 digit precision.

MERLIN-0.8.1
============

  * Major editing of tree traversal and construction code to
    account for changes in operator precedence between gcc
    version 3.0 and versions 2.95.*.

    (and you thought C++ was pretty well established, eh?)

  * Minor fix to code which optimizes ordering of individuals
    within pedigrees. No effect on results, but may sometimes
    speed things up.

MERLIN-0.7.3
============

  * Catch out of memory errors during haplotyping and gracefully
    skip to next pedigree.

MERLIN-0.7.1
============

  * Attempt to recover from memory allocation failures. In 32-bit
    systems some failures are unrecoverable (e.g., trying to
    allocate memory blocks > 2GB), so the --megabytes option is
    necessary so Merlin doesn't try to allocate these huge blocks.

  * The --bits option now replaces the old -b option.

MERLIN-0.6.1
============

  * Very unlikely genotypes now have scores in scientific notation,
    e.g., 1e-10 instead of 0.00000.

  * Added support for variance components analysis.

MERLIN-0.5.1
============

  * First version distributed outside Oxford.

=============================================================
OLDER VERSIONS OF MERLIN ONLY USED INTERNALLY
=============================================================

