[Bioperl-l] [bug 3120] Bio::DB::SeqFeature::Store::DBI::SQLite + bp_seqfeature_gff3.PLS = unhappy?

John Anderson genehack at genehack.org
Sun Jul 25 14:06:55 EDT 2010


(This is in reference to:

<http://lists.open-bio.org/pipermail/bioperl-l/2010-July/033660.html>
<http://bugzilla.open-bio.org/show_bug.cgi?id=3120>
<http://bugzilla.open-bio.org/attachment.cgi?id=1526&action=view>

; sorry I'm not responding to the original message but I wasn't on the list at that point.)

There are really two issues being reported here. First, bp_seqfeature_gff3.PLS throws the following error when used with Bio::SeqFeature::Store::DBI::SQLite:

> Can't locate object method "gff3_string" via package "Bio::SeqFeature::Generic" at /Users/jhannah/src/bioperl-live/scripts/Bio-SeqFeature-Store/bp_seqfeature_gff3.PLS line 58.

Second, when called on a database that's been built with '$db->no_blobs(1)', the output doesn't actually include any features.

I've got a fix for the first bug in <http://github.com/genehack/bioperl-live/tree/topic/bug-3120>. (I've submitted a pull request for that branch to the 'bioperl' user.) Basically, when looping over the feature objects in bp_seqfeature_gff3.PLS, we introspect each one to find out if it supports the gff3_string() or gff_string() methods, and either call the appropriate one or throw an exception.

(I considered just calling gff_string() instead of doing the introspection, since (a) that's the interface documented in SeqFeatureI and (b) SeqFeature::Lite, which is the only thing that currently implements gff3_string() _also_ implements gff_string(), which recalls gff3_string() when appropriate, but in the end decided that this way preserves the original intent of the script as much as possible...)

I'm working on something that may be a fix for the second issue as well, but thought I'd throw this first bit out for comments, being as this is the first change I've contributed back to the project. 

thanks,
john.



More information about the Bioperl-l mailing list