PyPedal facilitates pedigree manipulation with its comprehensive toolkit provided through a Python module.
Some improvements have been made in pyp_newclasses/NewAnimal::__init__() to avoid calling string methods on non-strings. The string_to_int() method in pyp_newclasses/NewAnimal now utilizes a new hashing algorithm taken from "Data Structures and Algorithms with Object-Oriented Design Patterns in Python" by Bruno R. Preiss, which fixes the collision problem with the previous algorithm. Moreover, pyp_newclasses/NewAnimal::__init__() assigns animal, sire, and dam names correctly even if integral IDs are passed rather than strings.
Other bug fixes include turning off a bunch of debugging messages left on in pyp_utils/reorder(), fixing the error in pyp_utils/assign_offspring() due to errors introduced when the new object model conversion was made, and removing pyp_utils/reorder_list(). The new release also includes a new parameter, max_rounds, to pyp_utils/reorder(), with a default value of 100 rounds. Additionally, pyp_utils/reorder() will write error messages to the logfile and STDIO if a pedigree could not be renumbered in renumber_max_rounds of iteration.
In the latest release, a new function, pyp_io/write_ijk(), has been added, which saves an NRM to a disk in ijk format. The previously existing functions, pyp_nrm/*, have been improved, including fixing a bug in pyp_nrm/inbreeding() so that it correctly works with pre-calculated NRM. Finally, an error message in pyp_newclasses/NewPedigree::preprocess() has been rewritten to make more sense.
Version 2.0.0 Beta 22: N/A