bio-maf version 0.3.0 is released. This version adds features including joining adjacent MAF blocks when sequences that caused them to be split have been filtered out; returning bio-alignment objects; and truncating (or ‘slicing’) alignment blocks to only cover a given genomic interval.
For developers, this also adds a higher-level Bio::MAF::Access API for working with directories containing indexed MAF files (or, alternatively, single files), providing all relevant functionality for indexed access in a simpler way than using the KyotoIndex and Parser classes directly. The maf_tile(1) utility has been updated to use this functionality; a directory of indexed MAF files can now be specified, and the correct file will now be parsed as appropriate.
Usage of Enumerators and blocks has also been substantially improved;
all access methods for multiple blocks such as Access#find
,
Access#slice
, Parser#each_block
now accept a block parameter,
which will be called for each block in turn. If no block parameter is
given, they will all return an Enumerator for the resulting
blocks. This is how most of the Ruby standard library,
e.g. Array#each
, works.