[Bioperl-l] strange error after changing to RC1.5

Hilmar Lapp hlapp at gmx.net
Sat Mar 12 21:43:13 EST 2005

My first response to this was a long rant about almost every single one 
of your statements and which may have been mildly entertaining for 
people while the TV is on commercial. In the end I calmed down and 
thought people have probably better things to do than reading my rants 
(should I start a bioperl blog?), so here is the same in a gist and 
without (most of) the rant.

	- In my opinion the annotation system is core, like everything is by 
definition that attaches to a Bio::SeqI.

	- I'm not ever going to turn away people who took to the code to fill 
gaps or ambiguities in the documentation - API assumptions based on 
what the code did for years count as a binding contract just as 
expressly written contracts do.

	- I am strongly opposed to the notion that your customers should to 
the testing for your wild innovations as opposed to yourself doing that 
in advance, regardless of how fast or slow you respond to bug reports; 
people have better things to do than ironing out your revolution.

	- I *am* going to back out the changes from the main trunk; 
traditionally, in bioperl the main trunk has *not* been used for wild 
experiments the repercussions of which were not really clear - instead 
people opened their branches for that.

Allen feel free to reintroduce your changes and overloads and all kinds 
of crazy stuff on a branch that you open. We need the main trunk free 
of debris as the road to the next releases to come. Feel free to wreck 
the train elsewhere. People need the bugfixes now and Lincoln's 
additions that aren't in 1.4.x.

Of course, this being a community project, everybody who disagrees 
please feel free to speak up and if people want to stop me I'll be more 
than glad to step down - but then be prepared to step up yourself and 
take care of the mess.

On Friday, March 11, 2005, at 11:36  AM, Allen Day wrote:

> On Fri, 11 Mar 2005, Hilmar Lapp wrote:
>> I suggest that all the fancy overloading is removed from core bioperl
>> modules. If we need overloading for stringification or comparison
>> operators in one or our core modules I think we are making a mistake.
> The overloading is only there because assumptions have been made that
> annotations will be strings.  This assumption was okay previously 
> becasue
> the Bio::Annotation* modules were previously "non core" -- there was no
> unified annotation system in bioperl.  Now these modules are being made
> core, and this is part of the growing pain.
> I'm doing what I can to address the bug reports related to these 
> changes
> as they come in, and I don't think anyone will disagree that I'm doing 
> so
> in a timely manner.  However, I cannot fix bugs or field questions on
> biosql modules and would appreciate some cooperation/assistance from 
> the
> biosql developers.
>> This is part of the huge mess introduced when the SeqFeatureI
>> architecture was carelessly changed days before release. It's a
>> prototypical example for what not to do in a project that's as widely
>> used as bioperl.
> The SeqFeatureI changes were being gradually made in the 1-2 months 
> prior
> to the 1.5 release.  The release was, may I remind you, a *developer*
> release and not expected to be bug free.
>> *Every single bit* of those changes need to be rolled back from the
>> release and if nobody else has done it by then I will do so in two
>> weeks.
> Fine for the 1.5.1 branch, although I don't agree that this should be 
> done
> on the main trunk.
> -Allen
>> 	-hilmar
>> On Thursday, March 10, 2005, at 05:57  PM, Allen Day wrote:
>>> I'm unable to test the code in PersistentObject.pm as I don't have
>>> biosql
>>> set up, but you might try adding this to Reference.pm
>>>   use overload 'ne' => sub { "$_[0]" ne "$_[1]" }
>>> Please let me know if this fixes your error and I'll add this 'ne'
>>> overload to all the Bio::Annotation::* classes on HEAD.
>>> -Allen
>>> On Wed, 9 Mar 2005, Daniel Lang wrote:
>>>> Hi,
>>>> I´m retrieving seq objects from a local biosql db (using the latest
>>>> cvs
>>>> verion of bioperl-db) and e.g. writing them with SeqIO. After 
>>>> changing
>>>> from a cvs version ~ 12/04 to RC1.5 or latest cvs version, I get the
>>>> following error:
>>>> Operation `ne': no method found,!!left argument in overloaded 
>>>> package
>>>> Bio::Annotation::Reference,!!right argument has no overloaded magic 
>>>> at
>>>> /usr/lib/perl5/site_perl/5.6.1/Bio/DB/Persistent/PersistentObject.pm
>>>> line 534, <GEN1> line 1.!
>>>> The module PersistentObject.pm hasn´t changed and in Reference.pm
>>>> there
>>>> is only this change:
>>>> diff bioperl-live-Dec04/Bio/Annotation/Reference.pm
>>>> bioperl-live/Bio/Annotation/Reference.pm
>>>> 1c1
>>>> < # $Id: Reference.pm,v 1.21 2004/08/19 20:13:32 lapp Exp $
>>>> ---
>>>>> # $Id: Reference.pm,v 1.22 2005/02/02 22:13:22 allenday Exp $
>>>> 56c56,57
>>>> < # use overload '""' => \&as_text;
>>>> ---
>>>>> use overload '""' => sub { $_[0]->title || ''};
>>>>> use overload 'eq' => sub { "$_[0]" eq "$_[1]" };
>>>> I´ve reversed this, but no positive result - the error remains...
>>>> Any hints?
>>>> Thanks in advance,
>>>> Daniel
>>>> _______________________________________________
>>>> Bioperl-l mailing list
>>>> Bioperl-l at portal.open-bio.org
>>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l
>>> _______________________________________________
>>> 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