PyPedal 2 CHANGELOG
===================
"---" indicates a known bug;
"+++" indicates a feature addition;
"***" indicates an API change or a major bugfix;
"'''" indicates a minor bugfix or feature enhancement.
"???" indicates a possible problem (i.e. bug) that has
      not been verified.
"XXX" indicates a feature that has been deprecated or removed.
"!!!" indicates a feature that is planned or stubbed, but is not yet working.
"###" indicates a note or idea I don't want to forget.

CHANGES in PyPedal 2.0.0 (Vetinari)
===================================
''' 09/29/2010  The 'Input and Output' chapter in the manual probably won't
    get any stranger than it is now.
''' 09/29/2010  Updated the 'High Level Overview' chapter in the manual to
    include several new pedigree options that were not previously documented,
    as well as default values that have changed.
''' 09/28/2010  Updated the 'Input and Output' chapter in the manual to cover
    NewPedigree::save().
''' 09/28/2010  Had to recreate documentation updates from the latest PDF
    version of the manual because incautious rsync-ing apparently caused the
    most recent version of the LaTeX files to be overwritten with an earlier
    version. Crumbs.
''' 09/28/2010  NewPedigree::save() has been tested and is working as intended.
''' 09/28/2010  The default values of the keywords missing_name, missing_herd,
    and missing_breed in NewPedigree::__init__.kw() have been changed to use
    underscores rather than spaces. This prevents people from unintentionally
    munging up pedigree files written with NewPedigree::Save() that use a space
    (' ') for the sepchar. If you don't like this you can override the
    defaults when a pedigree is instantiated.
''' 09/28/2010  A little more clean-up in the API documentation generated by
    Doxygen. Now only the PyPedal modules are included. Previously, ADOdb and
    a few other stray bits that don't have any Doxygen markup were being
    included.
*** 09/22/2010  Major clean-up in the API documentation generated by Doxygen.
''' 09/20/2010  As part of adding the new save(), the pedformat_codes list
    was moved from NewPedigree::preprocess() to NewPedigree::__init__().
    This avoids the need to keep multiple copies of the list.
!!! 09/20/2010  Added a new version of the save() method to NewPedigree for
    writing custom pedigree files.
XXX 09/20/2010  NewPedigree::save() has been renamed NewPedigree::oldsave().
*** 09/17/2010  Fixed the disappearing logfile problem, which was caused by
    emitting log messages in modules, e.g., pyp_nrm, that were imported by
    pyp_newclasses. The messages were reporting when psyco could not be
    imported, and I don't know why it caused a problem with later logging,
    but it did. The problem only manifests when logging messages are sent
    outside of functions, in this case in the header of the file during the
    module importation process. Logging messages sent from functions that
    are called after a pedigree is instantiated work fine. The problem is fixed,
    but not really solved since it is still not properly understood by me.
''' 09/17/2010  Changed a number of warning messages to info messages. If
    the psyco module cannot be found it is not a problem -- PyPedal will
    still work properly -- and calling that a warning is somewhat misleading.
''' 09/17/2010  Fixed a typo in pyp_nrm.py that prevented a module import
    message from being logged properly.
+++ 09/17/2010  Added a new keyword, foundercoi, to NewPedigree::__init__()
    which tells pyp_nrm.fast_a_matrix() whether or not to use coefficients
    of inbreeding from the pedigree to augment the diagonals for founders.
    If the user does not provide coefficients of inbreeding in the pedigree
    file then the diagonals will remain 1 because fa defaults to 0.
''' 09/01/2010  Turned off some debugging messages that accidentally were
    left on.
