[Bioperl-l] Entrez Gene parser questions
Hilmar Lapp
hlapp at gmx.net
Wed Jun 8 22:28:47 EDT 2005
Quite frankly, mixing versions in bioperl has never worked really well
and nobody really has time to support this, so I don't think it's good
advice to people to suggest plugging in single modules from a recent
version into an older one. Just update to current cvs and you should be
at a state where at least you're not totally on your own.
As for the output, these are obviously warnings, and instead of asking
you to turn off -w (L.Wall: Known bugs: -w is not on by default.)
Stefan and Mingyi should fix whatever is needed to silence those
warnings. (No offense please)
-hilmar
On Jun 8, 2005, at 11:40 PM, Law, Annie wrote:
> Hi,
>
> I went to bioperl-live and copied the newest entrezgene.pm and
> Bio::AnnotatableI, Bio::SeqFeatureI modules and
> I got the following output (same output with entrezgene.pm saved on
> May 11 as well). The complaint about the module
> Generic.pm is gone now.
> I am using EntrezGene V 1.09 picked up from CPAN.
>
> I'm not sure what is wrong. I guess I could delete the Bio/ASN1
> directory and install EntrezGene V.1.07 but that is not supposed to
> make a difference?
> Here's a wild stab but are the additional messages related to a
> statement I read somewhere about the first record being empty?
>
> Is my next alternative to install Bioperl 1.5 and try again? If so, am
> I correct in thinking that to 'uninstall' there is no such
> Uninstall command but I would just delete the
> /usr/lib/perl5/site_perl/5.8.0/Bio ie. The Bio directory and then
> Use CPAN to install bioperl 1.5
>
> Thanks so much,
> Annie.
>
>
> Argument "-trimopt" isn't numeric in numeric eq (==) at
> /usr/lib/perl5/site_perl/5.8.0/Bio/ASN1/EntrezGene.pm line 450.
> Pseudo-hashes are deprecated at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 543.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 554.
> Use of uninitialized value in substitution (s///) at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 555.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 554.
> Use of uninitialized value in substitution (s///) at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 555.
> Pseudo-hashes are deprecated at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 604.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 604.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 604.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 295.
> Use of uninitialized value in string eq at
> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 323.
>
>
> -----Original Message-----
> From: Stefan Kirov [mailto:skirov at utk.edu]
> Sent: Tuesday, June 07, 2005 8:39 PM
> To: Mingyi Liu
> Cc: Law, Annie; Bioperl list
> Subject: Re: [Bioperl-l] Entrez Gene parser questions
>
>
> I am pretty sure it is the old Bio::SeqFeature::Generic that breaks the
> code (actually the underlying modules I mentioned...).
> Thanks for the -file option... There are also some leftover commenst
> :-)
> . I need to clean the code a bit...
> Stefan
>
> Mingyi Liu wrote:
>
>> Hi, Annie
>>
>> Annie must've been using the Bio::ASN1::EntrezGene V1.09, which worked
>> fine with your entrezgene.pm in bioperl-live at least a couple days
>> ago, when I replied to Annie. V1.09 also did not have any significant
>> changes in parser code vs. 1.07.
>>
>> I guess it has something to do with V1.4 since the sample script you
>> used below runs perfectly fine on my Bioperl 1.5 + entrezgene.pm. The
>> procedure you used was also correct (there's no need to 'use
>> Bio::ASN1::EntrezGene;' though). Try follow Stefan's suggestion first
>> (although I don't quite understand why Bio::ASN1::EntrezGene
>> complained about non numerica operon, which can only result from
>> incorrect calling of the function. But Stefan's entrezgene was using
>> correct calling and it runs perfectly for me. I was using
>> entrezgene.pm CVS version 1.9.
>>
>> Keep us posted on your progress.
>>
>> BTW, Stefan, you could call Bio::ASN1::EntrezGene with either '-file'
>> (bioperl style) or 'file' (I allowed both when I implemented this
>> switch I think. I usually just use file, which might explain your note
>> in the comment in your script. I just noticed the comment.
>>
>> Mingyi
>>
>> Stefan Kirov wrote:
>>
>>> Hi Annie,
>>> Few more things to update:
>>> Bio::AnnotatableI and Bio::SeqFeatureI. I believe this is the reason
>>> your script does not work. Update also Bio::SeqIO::entrezegene- I
>>> added some fixed so you will not see those nasty warning when using
>>> strict (nothing critical though).
>>> I am not sure we have the same versions for Bio::ASN1::EntrezGene. I
>>> have 1.0.7. Where did you get it from (maybe mine is older)?
>>> Stefan
>>>
>>> Law, Annie wrote:
>>>
>>>> Hi,
>>>>
>>>> Thanks for all of the replies.
>>>> I am using bioperl 1.4 and I have done the following:
>>>> 1. installed Bio::ASN1::EnztrezGene (using perl Makefile.PL, make,
>>>> make test, make install)
>>>> 2. got a copy of the entrezgene.pm from bioperl-live and put it in
>>>> the Bio/SeqIO directory
>>>> 3. copied the Bio::Annotation::DBLink DBLink.pm file and put them in
>>>> the corresponding directory
>>>> 4. the Bio::Cluster::SequenceFamily file was already up to date
>>>> 5. also have all the most recent bioperl-live Bio::SeqFeature::Gene
>>>> modules
>>>>
>>>> I grabbed the ASN file from
>>>> ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/ASN/Mammalia/
>>>>
>>>> I then wrote a simple perl script which includes:
>>>>
>>>> #!/usr/bin/perl -w
>>>>
>>>> use strict;
>>>> use Bio::ASN1::EntrezGene;
>>>> use Bio::SeqIO;
>>>> use Bio::Annotation::DBLink;
>>>> use Bio::Cluster::SequenceFamily;
>>>>
>>>> my $file = '/var/lib/mysql/Homo_sapiens';
>>>>
>>>> my $seqio = Bio::SeqIO->new(-format => 'entrezgene',
>>>> -file => $file,
>>>> -debug => 'on');
>>>>
>>>> my ($gene,$genestructure,$uncaptured) = $seqio->next_seq;
>>>>
>>>> After I run this script I get the following errors:
>>>>
>>>> Useless use of hash element in void context at
>>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 317.
>>>>
>>>> Argument "-trimopt" isn't numeric in numeric eq (==) at
>>>> /usr/lib/perl5/site_perl/5.8.0/Bio/ASN1/EntrezGene.pm line 450.
>>>>
>>>> Pseudo-hashes are deprecated at
>>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 148.
>>>>
>>>> Use of uninitialized value in string ne at
>>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 150.
>>>>
>>>> Pseudo-hashes are deprecated at
>>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
>>>>
>>>> Can't locate object method "add_tag_value" via package
>>>> "Bio::SeqFeature::Generic" at
>>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqFeature/Generic.pm line 234.
>>>>
>>>> I'm not sure what I am missing?
>>>>
>>>> Thanks so much,
>>>> Annie.
>>>
>>>
>>
>>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at portal.open-bio.org
> http://portal.open-bio.org/mailman/listinfo/bioperl-l
>
>
--
-------------------------------------------------------------
Hilmar Lapp email: lapp at gnf.org
GNF, San Diego, Ca. 92121 phone: +1-858-812-1757
-------------------------------------------------------------
More information about the Bioperl-l
mailing list