Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


PyPedal / News: Recent posts

rc7 -- The Matthieu Authier Edition

This release candidate features lots of bugfixes that grew out of some problems reported by matthieu Authier. Thanks, Matthieu! Here are the highlights:

05/07/2008 Added a check to pyp_graphics/draw_pedigree()
to catch empty gtitles, which cause dot to crash. If the
gtitle is empty then it is set equal to the 'pedname'
attribute of the NewPedigree object.

05/07/2008 Fixed pyp_network/get_node_betweenness() to use
the correct betweenness function from NetworkX.... read more

Posted by John B. Cole 2008-05-07

rc6 -- Logging fix, better clean-up

Logging now works again, ID maps are cleaned-up automatically after pedigree renumbering, and pyp_metrics/effective_founder_genomes() has some new parameters and a small bugfix.

Posted by John B. Cole 2008-05-01

rc5 -- pyp_networking bugfix and new debugging option

Added the parameter debugLoad to the loadPedigree() function in pyp_newclasses.py. It defaults to False; when True it loads the pedigree without using a try-except block so that errors are not suppressed.

Fixed pyp_network/mean_geodesic() to properly catch an exception raised by NetworkX when no path exists between two nodes in a graph.

Posted by John B. Cole 2008-04-14

rc4 -- Installation fixes

Installation of PyPedal using the standard "python setup.py install" should now work correctly. Thanks to Ken Severin for reporting problems with the installer.

Posted by John B. Cole 2008-04-09

rc3 -- Major database overhaul

Release candidate 3 includes an important bugfix for pyp_metrics/inbreeding_vanraden(), as well as a major overhaul of the database backend that included changes to pyp_db, pyp_newclasses, pyp_reports, and the manual. PyPedalnow uses ADOdb for Python to talk to databases, and MySQL, Postgres, and SQLite are supported out0of-the-box. ADOdb is bundled with PyPedal.

Posted by John B. Cole 2008-03-28

rc2 -- Major inbreeding() bugfix

The relationship metadata returned by pyp_metrics/
inbreeding() are not guaranteed to be correct when
method = 'vanraden' is used. This is because
inbreeding_vanraden() uses a speed-up when there
are full-sibs in the pedigree to avoid
repeating calculations. The metadata should be
pretty accurate for pedigrees with few or no
full-sibs. The summary statistics will not be very
accurate in the case of pedigrees that contain
lots of full-sibs. I'm not sure that this is so
much a bug as an optimization tradeoff.... read more

Posted by John B. Cole 2008-03-11


This is the first release candidate. From now on no new features or API changes. Really!

Changes from b23:
Added a new chapter to the manual;
Added tostream() to NewPedigree;
Fixed a small bug in NewPedigree::fromgraph();
Loading pedigrees from a database now works;
Saving pedigrees to a database now works.

Posted by John B. Cole 2008-03-05

Bera 23 - GEDCOM, partial and ancestral inbreeding, no more

In addition to the usual number of bugfixes and documentation updates I've ripped out the GUI, added GEDCOM import/export, support for pedigree input as strings, and added calculation of partial and ancestral inbreeding.

Posted by John B. Cole 2008-03-03

Beta 22 - Major fix to pedigree reordering routine

The git news in this relase are major bugfixes to pyp_utils/reorder(). I've fixed cases where the pedigree was not correctly reordered. When this happened, pyp_utils/renumber() caught KeyErrors while looking up sires/dams and set parents to unknown, ignoring known relationships in the pedigree. George Wiggans's persistent reports that the relationships being calculated were just not right led to the root cause of the problem. Thanks, George!... read more

Posted by John B. Cole 2007-06-26

Beta 21 -- Hashing bugfix for 'ASD'-formatted pedigrees

Fixed a bug in the NewAnimal::string_to_int() and LightAnimal::string_to_int() methods. The bug (reported by Matt Kelly) manifested on Windows XP/Python 2.5 and Max OS/X platforms and resulted in the failure of pyp_utils/reorder) to successfully reorder pedigrees when the 'ASD' pedigree format code was used. I believe that the problem was related to the value of sys.maxint, which varies between 32-bit and 64-bit platforms. string_to_int() now uses a hash calculated using the Python MD5 module as the main hashing method, and the old method as a backup should the first throw an exception (such as could be caused by an unsuccessful cast of a long hexadecimal value to a (long) integer). In that case, the old method will now use a hard-coded value in calculating the hash rather than sys.maxint.... read more

Posted by John B. Cole 2007-04-06

Beta 20 -- Major bugfixes for LightAnimal handling

03/22/2007 Minor documentation fixes and additions.

03/22/2007 Added a new method, savegraph(), to
pyp_newclasses/NewPedigree for saving graphs to
adjacency matrices.

03/22/2007 Added a new value of pedsource,
'graphfile', which can load a pedigree stored as
a directed graph in a text file in an adjacency

03/22/2007 Added a new argument to
pyp_utils/renumber(), animaltype, that allows for
proper handling of NewAnimal versus LightAnimal
instances.... read more

Posted by John B. Cole 2007-03-22

Beta 19 -- References to Numarray removed

A couple of lingering references to Numarray were removed. PyPedal is now 100% NumPy.

Posted by John B. Cole 2007-03-19

Beta 18

Two bugs were fixed in this release, including a metadata bug which caused problems using those data on renumbered pedigrees, and a dependency on Numarray was replaced with a NumPy call; thanks to Matt Kelly for reporting that problem.

Posted by John B. Cole 2007-03-14

Beta 16

Minor bugfix for the "u" pedigree format code, revised documentation including better Windows installation instructions, and a cleaned-up set of files in the tarball. The MANIFEST.in file was rewritten to include only the necessary files for running PyPedal.

Posted by John B. Cole 2006-11-02

Beta 15 - New features, bugfixes

Several new graph theory routines; graphics updates; new keywords and pedigree format codes; many bugfixes; documentation updates.

Posted by John B. Cole 2006-09-21

Beta 13 - Fix for b12 fix, patch to NewPedigree::addanimal()

The fix introduced in Beta 12 only solved the problem in some cases. I think a more dobust fix is in place now. I also fixed a problem with the way that NewPedigree::addanimal() was mapping renumbered sire and dam IDs back to names in ASD pedigrees.

Posted by John B. Cole 2006-05-15

Beta 12 - Big relationship fix

Matt Kelly reported a bug in pyp_metrics/relationship() that resulted in erroneous relationships in some cases; it has been fixed.

Posted by John B. Cole 2006-05-15

Beta 11 - Reordering and hashing fixes

This is an important update -- some minor problems in the animal reordering code have been fixed. In addition, the hashing algorithm used to convert string IDs to integers has been changed; the previous algorithm was having collision problems with very similar inputs.

Posted by John B. Cole 2006-05-12

Beta 10 - Major reordering bugfix

A major bug has been discovered and fixed in the reordering routine. This was a tricky bug to find and fix. Many thanks to Mattjew Kelly for providing a pedigree that demonstrated the problem.

The code has also been audited to make sure that all routines correctly use the missing parent codes.

Posted by John B. Cole 2006-04-29

Beta 9 - Missing parent problems fixed

pyp_jbc/draw_colored_pedigree() now correctly handles user-specified missing parent codes.

pyp_network/ped_to_graph() now correctly handles user-specified missing parent codes.

Fixed PedigreeMetadata::nud() and PedigreeMetadata::nus() so that they correctly handle user-specified missing parent codes.

Added a new parameter, missingparent, to
pyp_utils/reorder(). reorder() can now correctly handle user-specified missing parent codes.... read more

Posted by John B. Cole 2006-04-27

Beta 8 -- minor bugfixes

New release includes several bugfixes for handling strings as animal IDs (ASD format codes). Also added pyp_metrics/mating_coi_group(), which can be used to identify the minimum-inbreeding matings from a set of proposed parents.

Posted by John B. Cole 2006-04-17

Beta 7 -- new pedigree report, bugfixes

There's a new three-generation pedigree report, as well as a number of bugfixes.

Posted by John B. Cole 2006-04-13

Beta 6 -- now with pedigree simulation!

Beta 6 is out, and includes some bugfixes, documentation cleanups, extra class goodness, and the long-awaited pedigree simulator.

Posted by John B. Cole 2006-02-16

Beta 5 - many bugfixes and a few new features

There are enough bugfixes in Beta 5 that all users are encouraged to upgrade.

Posted by John B. Cole 2005-12-19

Beta 4 - Recommended upgrade!

Beta 4 is released. It is a recommended upgrade because there are some significant bugfixes in this release.

Posted by John B. Cole 2005-12-06