Fields, Christopher J | 6 Mar 20:19 2013

Re: Issue in Terminal Partial Codon Translation (1.6.0 ->1.6.1) ?

On Mar 6, 2013, at 12:18 PM, "Karger, Amir" <Amir_Karger <at>> wrote:

> On 3/5/13 3:55 PM, "Chris Larsen" <clarsen <at>> wrote:
>> Hello BioPerl-l,
>> A biologist might know that this terminus is always going to be a
>> Glycine, G, since the third position is irrelevant, and so we would like
>> to extend the partial codon into another amino acid in the last 'E2'
>> protein encoded by this genome fragment. It's not sequenced but we can
>> infer. The viral proteins are so short, it really matters! We want that G
>> (and SPTAVRL). However the newer BioPerl version is not giving us the
>> last amino acid. The functionality appears to be turned off, or a default
>> argument was changed?  Issue with -complete ?
>> PS: Chris F and Amir discuss : highly related issue:
>> "why should CodonTable::translate() automatically 'complete' the
>> translation for incomplete codons by default?  I would consider this a
>> bug."
> I guess one man's bug is another man's feature.
> Sorry to have ruined your pipeline.
> -Amir

Chris, Amir,

Just a note: BioPerl is now at 1.6.901 on CPAN (released in 2011) and will be at 1.6.902 sometime next week.  

IIRC (and from back-reading in that thread), the problem was one of consistency, namely that translate()
from PrimarySeqI and CodonTable act differently, and that to intuit what is the 'correct' thing to do in
this case was possibly wrong from the PrimarySeqI end.  We went the route of least magic and least surprise,
namely to return just the translated sequence w/o guessing whether the sequence in question is complete.  

So in my opinion, the old behavior was a bug, and the new behavior is more consistent.  The magic way is still
there, though; pass in '-complete => 1'.  I can check that, just in case, to make sure it works.