[Bioperl-l] AlignIO error with aligments containing an all-gap sequence

Chris Fields cjfields at illinois.edu
Fri Aug 14 15:53:51 UTC 2009


On Aug 14, 2009, at 10:12 AM, Dave Messina wrote:

> Is this using bioperl-live?
>
> Sorry, should've said before. Yes, it's bioperl-live (r15927).
>
>
>  I recall this being a problem but I thought it was addressed in svn  
> (and soon in the next point release).
>
> Hmm, the only recent somewhat related change I see (in  
> Bio::AlignIO::*, anyway) is:
>
> ------------------------------------------------------------------------
> r15753 | cjfields | 2009-06-10 05:51:38 +0200 (Wed, 10 Jun 2009) | 2  
> lines
>
> deprecate no_sequences/no_residues in main trunk (we can switch the  
> version to 1.7 if deemed necessary)
> ------------------------------------------------------------------------
>
>
> Perhaps this is what you were thinking of?
>
> Dave

Maybe not, then (for some reason I thought this was fixed within  
LocatableSeq).  I know that it is possible to have an all-gap  
LocatableSeq; this works, but the default start/end/length aren't  
correct, which is part of Bernd's bug:

use Modern::Perl;
use Bio::LocatableSeq;
my $seq = Bio::LocatableSeq->new(
                  -seq => '-------------',
                  -alphabet => 'dna',
                  );

say $seq->start;  # 1
say $seq->end;    # undef (?)
say $seq->length; # 13, counts the gaps

The problem is, to fix all this relies on a whole slew of refactors  
for LocatableSeq and SimpleAlign.  Some of this touches root  
components as well, so it'll need to be tried on a branch and will  
very likely result in some API changes (and thus may not be included  
in 1.6).

I'll start a branch to get the process started.

chris




More information about the Bioperl-l mailing list