From gad14 at cornell.edu Thu Mar 3 16:25:48 2005 From: gad14 at cornell.edu (Genevieve DeClerck) Date: Thu Mar 3 16:20:41 2005 Subject: [BioSQL-l] gff in biosql; biosql, gbrowse observations In-Reply-To: References: Message-ID: <422780DC.5020209@cornell.edu> Hi, I've been playing around with a test biosql database I have running (with gbrowse frontend and mysql rdbms). Using the 'load_seqdatabase.pl' script I can successfully load a genbank file (NC_004578.gbk, the TIGR-annotated P. syringae chromosome) into a mysql biosql database. However, when I try to load a gff file with additional syringae data I run in to problems - it appears that GFF is not supported by biosql?? (I don't see it as a valid format in SeqIO/ or any mention in the docs). Also, when I take a look at the data in the biosql database, I see a lot of empty tables and empty fields. The bulk of the data loads into these tables: location, seqfeature, seqfeature_qualifier_value. One table I expected to see data in is dbxref - I was surprized to see this completely empty because there are db_xrefs defined throughout the gbk file I loaded. Other tables that are empty: bioentry_dbxref, bioentry_path, bioentry_relationship, dbxref_qualifier_value, location_qualifier_value, seqfeature_dbxref, seqfeature_path seqfeature_relationship, term_* (all term tables except 'term'). As for empty fields, I would not have expected the 'display_name' in table 'seqfeature' to be empty/NULL. This appears to be an important field for feature display in gbrowse. When I view this biosql database in gbrowse I can see CDS and genes glyphs, but the identifier labels are missing (even thought they're acitivate in the .conf file). I had a suspicion that the NULL display_name field might have something to do with the missing glyph label so I edited a record in 'seqfeature' in mysql, replacing NULL with "Foo" -- I refreshed the gbrowse page and, sure enough, a "Foo" label appeared on the glyph whose info I altered in the db. This proved to me that there definately seems to be some disconnect between how the gbk file was parsed by load_seqdatabase.pl and/or how these data were inserted into the database. Any thoughts or suggestions? Thanks, Genevieve From hlapp at gnf.org Thu Mar 3 18:00:45 2005 From: hlapp at gnf.org (Hilmar Lapp) Date: Thu Mar 3 17:55:36 2005 Subject: [BioSQL-l] gff in biosql; biosql, gbrowse observations In-Reply-To: <422780DC.5020209@cornell.edu> References: <422780DC.5020209@cornell.edu> Message-ID: <132B2D43-8C38-11D9-8FE8-000A95AE92B0@gnf.org> On Mar 3, 2005, at 1:25 PM, Genevieve DeClerck wrote: > Hi, > > I've been playing around with a test biosql database I have running > (with gbrowse frontend and mysql rdbms). Using the > 'load_seqdatabase.pl' script I can successfully load a genbank file > (NC_004578.gbk, the TIGR-annotated P. syringae chromosome) into a > mysql biosql database. However, when I try to load a gff file with > additional syringae data I run in to problems - it appears that GFF is > not supported by biosql?? (I don't see it as a valid format in SeqIO/ > or any mention in the docs). Biosql itself doesn't support or not support specific formats - it's whatever bioperl supports. There is two caveats to this statement: 1) load_seqdatabase.pl instantiates a SeqIO-compliant (or in fact a Bio::ClusterIO-compliant) parser and thus expects Bio::SeqI (or Bio::ClusterI) objects coming from the parser. In order to use a parser that returns different objects (like Bio::SeqFeatureI from the Bio::FeatureIO system if I understand things correctly) you at this point would have to write a variant of load_seqdatabase.pl that deals with this. Although it shouldn't be difficult (or so I suppose) it doesn't come off the shelf right now. 2) The biosql schema does distinguish between 'bioentries' and seqfeatures and has a not-null constraint on the foreign key from seqfeature to bioentry. That is, puristically speaking biosql does not support features without a sequence object that holds them. So, if you had a Bio::FeatureIO::gff parser that returns SeqFeatureI objects without attached sequence, you either need to artificially make up a sequence or you cannot load those features into biosql. > > Also, when I take a look at the data in the biosql database, I see a > lot of empty tables and empty fields. The bulk of the data loads into > these tables: location, seqfeature, seqfeature_qualifier_value. One > table I expected to see data in is dbxref - I was surprized to see > this completely empty because there are db_xrefs defined throughout > the gbk file I loaded. GenBank has dbxrefs in obscure places in the feature table. The Bio::SeqIO::genbank parser will not make an attempt to parse dbxrefs out of feature annotation - you have to write this yourself, e.g., as a SeqProcessor (this is what I do for e.g. RefSeq). Alternatively, use EMBL format as input which has designated tags for dbxrefs that are parsed accordingly by the SeqIO::embl parser. > Other tables that are empty: bioentry_dbxref, bioentry_path, > bioentry_relationship, dbxref_qualifier_value, > location_qualifier_value, seqfeature_dbxref, seqfeature_path > seqfeature_relationship, term_* (all term tables except 'term'). The bioperl parser or the loader will not do black magic by themselves - you only get the information that is in there and that is properly tagged. A genbank record does not contain relationships to other records other than (obscured) dbxrefs, so bioentry_relationship will not be populated by it. A ClusterIO stream will populate that table, e.g. when parsing UniGene. bioentry_path is meant for the transitive closure over bioentry_relationship and you have to compute it yourself at this point. seqfeature_relationship will not get populated from a genbank file as the feature table in genbank (and embl) is flat. In order to load relationships between terms you will need to load the ontology that defines them. term_path is again the transitive closure table (the load_ontology.pl script _will_ optionally compute the transitive closure). If dbxref is empty then association tables with it will of course also be empty. > > As for empty fields, I would not have expected the 'display_name' in > table 'seqfeature' to be empty/NULL. It is empty because none of the bioperl SeqIO parsers populates it. > This appears to be an important field for feature display in gbrowse. Agreed, but it's not supported (yet) by the bioperl SeqIO system. In a sequence-object centric world naming features is not important, as opposed to a feature-centric world. > When I view this biosql database in gbrowse I can see CDS and genes > glyphs, but the identifier labels are missing (even thought they're > acitivate in the .conf file). I had a suspicion that the NULL > display_name field might have something to do with the missing glyph > label so I edited a record in 'seqfeature' in mysql, replacing NULL > with "Foo" -- I refreshed the gbrowse page and, sure enough, a "Foo" > label appeared on the glyph whose info I altered in the db. This > proved to me that there definately seems to be some disconnect between > how the gbk file was parsed by load_seqdatabase.pl and/or how these > data were inserted into the database. There is no disconnect, but there is no magic either. Remember, load_seqdatabase.pl and the rest of bioperl-db in essence is nothing but the object-relational bridge that maps bioperl objects into the biosql schema. load_seqdatabase.pl won't make up any content that you didn't supply it with to begin with through the bioperl SeqIO parser or chained SeqProcessor. If you look at a genbank feature table you will realize that features do not have names - they only have type and location (and an implicit source), and some tag/value annotation. This is what a bioperl SeqIO parser will generally give you. The disconnect is between the feature-centric world as e.g. represented in GFF(3) and the sequence record-centric world represented by datasources like Genbank, Embl, UniProt, etc. and therefore also the Bioperl core object model. There are modules and scripts in bioperl that try to bridge this disconnect by converting seq objects with features to features with names, and by 'unflattening' Genbank feature tables. Check out stuff under scripts/Bio-DB-GFF and Bio::SeqFeature::Tools::Unflattener. -hilmar -- ------------------------------------------------------------- Hilmar Lapp email: lapp at gnf.org GNF, San Diego, Ca. 92121 phone: +1-858-812-1757 ------------------------------------------------------------- From daniel.lang at biologie.uni-freiburg.de Wed Mar 9 05:20:13 2005 From: daniel.lang at biologie.uni-freiburg.de (Daniel Lang) Date: Wed Mar 9 05:16:42 2005 Subject: [BioSQL-l] strange error after changing to RC1.5 Message-ID: <422ECDDD.40404@biologie.uni-freiburg.de> 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, 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 From daniel.lang at biologie.uni-freiburg.de Fri Mar 11 05:06:19 2005 From: daniel.lang at biologie.uni-freiburg.de (Daniel Lang) Date: Fri Mar 11 05:01:08 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: References: <422ECDDD.40404@biologie.uni-freiburg.de> Message-ID: <42316D9B.801@biologie.uni-freiburg.de> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Allen, When I add the line to all Bio::Annotation::*, we run into various other errors, e.g. : Can't call method "primary_key" on an undefined value at /usr/lib/perl5/site_perl/5.6.1/Bio/DB/BioSQL/BasePersistenceAdaptor.pm line 1325.! What are these overloaded methods for? Who/What is calling ->ne()? I?ve tried using the latest cvs version with the Annotation classes from december: This error is gone but then all SeqFeature tag_values are stringified memory addresses: /clone_lib="Bio::Annotation::SimpleValue=HASH(0x76883bb8)" /tissue_type="Bio::Annotation::SimpleValue=HASH(0x76883ccc ~ )" ~ /clone="Bio::Annotation::SimpleValue=HASH(0x76883d14)" /organism="Bio::Annotation::SimpleValue=HASH(0x76883d5c)" /lab_host="Bio::Annotation::SimpleValue=HASH(0x76883dec)" /db_xref="Bio::Annotation::SimpleValue=HASH(0x76883e34)" /mol_type="Bio::Annotation::SimpleValue=HASH(0x76885360)" ~ /note="Bio::Annotation::SimpleValue=HASH(0x76883da4)" ? To make it even more complicated, I?ve dumped both seq objects (the one all with classes from dec?04 and the bioperl-live with only the Annotation classes from dec?04) there is no diff!? The Seq, SeqI, RichSeq SeqFeature::Generic objects didn?t change since then... - -Daniel 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, 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@portal.open-bio.org |>http://portal.open-bio.org/mailman/listinfo/bioperl-l |> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (MingW32) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFCMW2bmJnbCpJAG3ARAvbAAJ966Qc8RBFbhlFL0VpVo073N1sEWgCdF7jM 56Ozp3Rl2HdHxxXipeJnx8w= =OHJA -----END PGP SIGNATURE----- From hlapp at gmx.net Fri Mar 11 13:11:24 2005 From: hlapp at gmx.net (Hilmar Lapp) Date: Fri Mar 11 13:07:03 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: Message-ID: 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. 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. *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. -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, 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@portal.open-bio.org >> http://portal.open-bio.org/mailman/listinfo/bioperl-l >> > _______________________________________________ > Bioperl-l mailing list > Bioperl-l@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 ------------------------------------------------------------- From allenday at ucla.edu Thu Mar 10 20:57:36 2005 From: allenday at ucla.edu (Allen Day) Date: Fri Mar 11 13:10:27 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: <422ECDDD.40404@biologie.uni-freiburg.de> References: <422ECDDD.40404@biologie.uni-freiburg.de> Message-ID: 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, 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@portal.open-bio.org > http://portal.open-bio.org/mailman/listinfo/bioperl-l > From allenday at ucla.edu Fri Mar 11 12:59:58 2005 From: allenday at ucla.edu (Allen Day) Date: Fri Mar 11 13:10:36 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: <42316D9B.801@biologie.uni-freiburg.de> References: <422ECDDD.40404@biologie.uni-freiburg.de> <42316D9B.801@biologie.uni-freiburg.de> Message-ID: > What are these overloaded methods for? > Who/What is calling ->ne()? The SeqFeatureI class has been made, under the hood, to use the Bio::AnnotationCollection for storing annotations. Bio::AnnotationColleciton holds Bio::AnnotationI objects, not the simple strings that were held in older SeqFeatureI implementing classes. There is still a lot of code in bioperl (and bioperl-db I take it) that wants to treat the annotations as strings, so we add overloading to allow this to happen. No one is calling the eq() method direcly, it gets triggered when someone does like this: if ( $obj1->dbxref eq $obj2->dbxref ) { } It sounds like this might not be what is causing the problem for you, but I thought you should be aware as you debug. -Allen From hlapp at gmx.net Fri Mar 11 13:22:38 2005 From: hlapp at gmx.net (Hilmar Lapp) Date: Fri Mar 11 13:17:17 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: <422ECDDD.40404@biologie.uni-freiburg.de> Message-ID: <8C8C7E3A-925A-11D9-8881-000A959EB4C4@gmx.net> Try removing the overload altogether. Or, possibly better yet, don't use 1.5. I'm saying this because it should be the responsibility of the one who created the mess and didn't test it to clean it up and test rigorously and not the reponsibility of the community out there. -hilmar On Wednesday, March 9, 2005, at 02:20 AM, 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, 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@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 ------------------------------------------------------------- From hlapp at gmx.net Sat Mar 12 21:43:13 2005 From: hlapp at gmx.net (Hilmar Lapp) Date: Sat Mar 12 21:37:52 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: Message-ID: 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. -hilmar 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, 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@portal.open-bio.org >>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l >>>> >>> _______________________________________________ >>> Bioperl-l mailing list >>> Bioperl-l@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 ------------------------------------------------------------- From hlapp at gmx.net Sat Mar 12 22:21:32 2005 From: hlapp at gmx.net (Hilmar Lapp) Date: Sat Mar 12 22:17:17 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: Message-ID: In my recollection the previous proposal was to back them out of the branch to be created for v1.5.1., whereas they were to remain in the main trunk and thereby implicitly accepted for and included in all future development of bioperl. My proposal is that the basis for 1.5.1. is the main trunk and so they need to be backed out of the main trunk, and whoever (i.e., Allen) is in favor of those changes first prove their viability on a branch before bothering anybody else with them again. I do feel that there are no objections to my proposal other than from Allen, but I may be missing something or someone may not have spoken up yet. -hilmar On Saturday, March 12, 2005, at 07:01 PM, Brian Osborne wrote: > Hilmar, > > If I'm not mistaken this proposal to back out these changes was made > previously, and not by you. There were no objections to this proposal > at > that time. > > Brian O. > > > -----Original Message----- > From: bioperl-l-bounces@portal.open-bio.org > [mailto:bioperl-l-bounces@portal.open-bio.org]On Behalf Of Hilmar Lapp > Sent: Saturday, March 12, 2005 9:43 PM > To: Allen Day > Cc: Daniel Lang; BioPerl-List; OBDA BioSQL > Subject: Re: [Bioperl-l] strange error after changing to RC1.5 > > > 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. > > -hilmar > > 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, 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@portal.open-bio.org >>>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l >>>>> >>>> _______________________________________________ >>>> Bioperl-l mailing list >>>> Bioperl-l@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 > ------------------------------------------------------------- > > > > _______________________________________________ > Bioperl-l mailing list > Bioperl-l@portal.open-bio.org > http://portal.open-bio.org/mailman/listinfo/bioperl-l > > > > _______________________________________________ > Bioperl-l mailing list > Bioperl-l@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 ------------------------------------------------------------- From hlapp at gmx.net Sun Mar 13 05:06:46 2005 From: hlapp at gmx.net (Hilmar Lapp) Date: Sun Mar 13 05:02:12 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: Message-ID: <9BD28A60-93A7-11D9-9542-000A959EB4C4@gmx.net> Can you formulate as a test case how you use the API such it depends on those changes that I may be targeting? Or are these test cases in a gmod package that can be set up reasonably simple? Are you sure that what you depend on are the changes to the Bio::SeqFeatureI and Bio::Annotation::* modules? If it's only SeqFeature::Annotated, my plan was to leave that as much intact as possible. -hilmar On Sunday, March 13, 2005, at 01:11 AM, Scott Cain wrote: > Hilmar, > > I sympathize with your frustration, but backing out those changes will > break several tools that I've written for chado/gmod. This is an > area of active development, and users a frequently advised to update > to bioperl-live. Since there are users of that as well, how do we > decide > who gets to feel the pain? > > Scott > > ---------------------------------------------------------------------- > Scott Cain, Ph. D. cain@cshl.org > GMOD Coordinator, http://www.gmod.org/ (216)392-3087 > ---------------------------------------------------------------------- > > > On Sat, 12 Mar 2005, Hilmar Lapp wrote: > >> 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. >> >> -hilmar >> >> 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, 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@portal.open-bio.org >>>>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l >>>>>> >>>>> _______________________________________________ >>>>> Bioperl-l mailing list >>>>> Bioperl-l@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 >> ------------------------------------------------------------- >> >> >> >> _______________________________________________ >> Bioperl-l mailing list >> Bioperl-l@portal.open-bio.org >> http://portal.open-bio.org/mailman/listinfo/bioperl-l >> > > > _______________________________________________ > Bioperl-l mailing list > Bioperl-l@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 ------------------------------------------------------------- From amackey at pcbi.upenn.edu Mon Mar 14 11:57:23 2005 From: amackey at pcbi.upenn.edu (Aaron J. Mackey) Date: Mon Mar 14 11:54:13 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: <59ff1e0691dce94b58f4bc0a0432ca4a@tigem.it> References: <59ff1e0691dce94b58f4bc0a0432ca4a@tigem.it> Message-ID: <4235C273.7090305@pcbi.upenn.edu> Elia Stupka wrote: > As an external observer I can assure you that > the 1.5 changes are causing a lot of trouble in the real world, many of > which you don't get on the mailing list. Quite a few people are keeping > 1.4 for their day to day work and using 1.5 only when it is required > (e.g. gbrowse). So how can we possibly address these issues if we don't know about them? 1.5 is a developer's, not stable release. It wouldn't surprise me that "critical" code bases are not ready to use 1.5 > Bioperl, because of its wide usage by a non-developer > crowd has most definitely become the sort of project where code elegance > and efficiency and conceptual issues are much less of a priority than > stability and usability. So is BioPerl a stable project, or a dead project? BioPerl has hardly ever been (greatly) concerned with usability ... -Aaron From allenday at ucla.edu Fri Mar 11 14:36:11 2005 From: allenday at ucla.edu (Allen Day) Date: Thu Mar 17 09:13:28 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: References: Message-ID: 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, 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@portal.open-bio.org > >> http://portal.open-bio.org/mailman/listinfo/bioperl-l > >> > > _______________________________________________ > > Bioperl-l mailing list > > Bioperl-l@portal.open-bio.org > > http://portal.open-bio.org/mailman/listinfo/bioperl-l > > > > > From elia at tigem.it Sat Mar 12 05:08:08 2005 From: elia at tigem.it (Elia Stupka) Date: Thu Mar 17 09:13:35 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: References: Message-ID: <59ff1e0691dce94b58f4bc0a0432ca4a@tigem.it> >> *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. I couldn't agree more with Hilmar. I am writing this comment almost as an outsider considering my minor development involvement in bioperl since 1.4 was rolled out. As an external observer I can assure you that the 1.5 changes are causing a lot of trouble in the real world, many of which you don't get on the mailing list. Quite a few people are keeping 1.4 for their day to day work and using 1.5 only when it is required (e.g. gbrowse). Bioperl, because of its wide usage by a non-developer crowd has most definitely become the sort of project where code elegance and efficiency and conceptual issues are much less of a priority than stability and usability. Elia --- Telethon Institute of Genetics and Medicine Via Pietro Castellino, 111 80131 Napoli Tel. +39 081 6132 335 Fax. +39 081 560 98 77 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 1115 bytes Desc: not available Url : http://open-bio.org/pipermail/biosql-l/attachments/20050312/b5b47162/attachment.bin From brian_osborne at cognia.com Sat Mar 12 22:01:50 2005 From: brian_osborne at cognia.com (Brian Osborne) Date: Thu Mar 17 09:13:37 2005 Subject: [BioSQL-l] RE: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: Message-ID: Hilmar, If I'm not mistaken this proposal to back out these changes was made previously, and not by you. There were no objections to this proposal at that time. Brian O. -----Original Message----- From: bioperl-l-bounces@portal.open-bio.org [mailto:bioperl-l-bounces@portal.open-bio.org]On Behalf Of Hilmar Lapp Sent: Saturday, March 12, 2005 9:43 PM To: Allen Day Cc: Daniel Lang; BioPerl-List; OBDA BioSQL Subject: Re: [Bioperl-l] strange error after changing to RC1.5 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. -hilmar 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, 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@portal.open-bio.org >>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l >>>> >>> _______________________________________________ >>> Bioperl-l mailing list >>> Bioperl-l@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 ------------------------------------------------------------- _______________________________________________ Bioperl-l mailing list Bioperl-l@portal.open-bio.org http://portal.open-bio.org/mailman/listinfo/bioperl-l From cain at cshl.edu Sun Mar 13 04:11:17 2005 From: cain at cshl.edu (Scott Cain) Date: Thu Mar 17 09:13:38 2005 Subject: [BioSQL-l] Re: [Bioperl-l] strange error after changing to RC1.5 In-Reply-To: Message-ID: Hilmar, I sympathize with your frustration, but backing out those changes will break several tools that I've written for chado/gmod. This is an area of active development, and users a frequently advised to update to bioperl-live. Since there are users of that as well, how do we decide who gets to feel the pain? Scott ---------------------------------------------------------------------- Scott Cain, Ph. D. cain@cshl.org GMOD Coordinator, http://www.gmod.org/ (216)392-3087 ---------------------------------------------------------------------- On Sat, 12 Mar 2005, Hilmar Lapp wrote: > 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. > > -hilmar > > 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, 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@portal.open-bio.org > >>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l > >>>> > >>> _______________________________________________ > >>> Bioperl-l mailing list > >>> Bioperl-l@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 > ------------------------------------------------------------- > > > > _______________________________________________ > Bioperl-l mailing list > Bioperl-l@portal.open-bio.org > http://portal.open-bio.org/mailman/listinfo/bioperl-l > From s0460205 at sms.ed.ac.uk Fri Mar 18 05:32:16 2005 From: s0460205 at sms.ed.ac.uk (SG Edwards) Date: Fri Mar 18 05:27:04 2005 Subject: [BioSQL-l] First download of ncbi_taxonomy Message-ID: <1111141936.423aae3081dc5@sms.ed.ac.uk> Hi, Can you please help me with an error message? I have just installed a BioSQL database and am trying to run the load_ncbi_taxonomy.pl script to get taxonomy data into my database before I start to load sequences in. The database has been created and is empty, however, I get the following error message: Cannot open Local file taxdata/taxdump.tar.gz: No such file or directory at load_ncbi_taxonom.pl line 628 gunzip: taxdata/taxdump.tar.gz: No such file or directory sh: line 1: cd: taxdata: No such file or directory tar: taxdump.tar: cannot open: No such file or directory tar: error is not recoverable: exiting now loading NCBI taxon database in taxdata: ... retrieving all taxon nodes in the database ... reading in taxon nodes from nodes.dmp Couldn't open data file taxdata/nodes.dmp: No such file or directory rollback ineffective with AutoCommit enabled at load_ncbi_taxonomy.pl line 818. Use of uninitialized value in concatenation (.) or string at load_ncbi_taxonomy.pl line 820. rollback failed From mark.schreiber at novartis.com Thu Mar 31 04:07:41 2005 From: mark.schreiber at novartis.com (mark.schreiber@novartis.com) Date: Thu Mar 31 04:01:58 2005 Subject: [BioSQL-l] dates and terms Message-ID: Hello - Many records that might be stored in BioSQL have associated date fields. Biojava stores these as value in bioentry_qualifier_value with the term_id pointing to the Term for date. This seems to place a serious limitation on searching by date. I would like to be able to search for sequences entered between X and Y or before X etc. Has anyone come up with a workaround for date operations on VarChar2 or Strings? Thanks Mark Schreiber Principal Scientist (Bioinformatics) Novartis Institute for Tropical Diseases (NITD) 10 Biopolis Road #05-01 Chromos Singapore 138670 www.nitd.novartis.com phone +65 6722 2973 fax +65 6722 2910 ______________________________________________________________________ The Novartis email address format has changed to firstname.lastname@novartis.com. Please update your address book accordingly. ______________________________________________________________________ From hlapp at gnf.org Thu Mar 31 15:39:36 2005 From: hlapp at gnf.org (Hilmar Lapp) Date: Thu Mar 31 15:33:39 2005 Subject: [BioSQL-l] dates and terms In-Reply-To: References: Message-ID: Bioperl-db stores these similarly, but the term is 'date_changed' which basically comes from Bioperl's Bio::Seq::RichSeq. You can compare these dates but it's hard to do so universally for a search against the database. There is a scriptlet scripts/biosql/update-on-new-date.pl in the bioperl-db repository that shows a pretty straightforward approach for comparison. It uses Date::Parse which does a nice job of detecting most date formats automatically. The formats being used are actually I believe not dramatically different. In UniProt, they look like the following: DT 01-NOV-1995 (Rel. 32, Created) DT 01-OCT-1996 (Rel. 34, Last sequence update) DT 28-FEB-2003 (Rel. 41, Last annotation update) and these get stored as an array with the following elements 01-NOV-1995 (Rel. 32, Created) 01-OCT-1996 (Rel. 34, Last sequence update) 28-FEB-2003 (Rel. 41, Last annotation update) Date::Parse will just ignore the non-date stuff in parentheses. I don't know whether there's a similarly convenient library in Java. In Oracle you can specify the date format when converting. So, the following would take everything up to the first space character and convert it assuming the format used above: 1 select to_date(decode(instr('01-NOV-1995 (Rel. 32, Created)',' '), 2 0, 3 '01-NOV-1995 (Rel. 32, Created)', 4 substr('01-NOV-1995 (Rel. 32, Created)', 5 1, 6 instr('01-NOV-1995 (Rel. 32, Created)', 7 ' ') 8 ) 9 ), 10 'dd-mon-yyyy') 11* from dual SQL> / TO_DATE(DECODE(IN ----------------- 11/01/95 00:00:00 1 row selected. The DECODE() protects from cases when there is nothing following the date. If this looks too messy, hide it in a function: 1 CREATE OR REPLACE 2 FUNCTION biosql_to_date(qual_value IN VARCHAR2, 3 date_format IN VARCHAR2 DEFAULT 'dd-mon-yyyy') 4 RETURN DATE 5 IS 6 spacepos INTEGER; 7 BEGIN 8 spacepos := INSTR(qual_value,' '); 9 IF spacepos = 0 THEN 10 RETURN TO_DATE(qual_value,date_format); 11 END IF; 12 RETURN TO_DATE(SUBSTR(qual_value,1,spacepos), 13 date_format); 14* END; SQL> / Function created. Elapsed: 00:00:00.60 SQL> select biosql_to_date('01-NOV-1995 (Rel. 32, Created)') from dual; BIOSQL_TO_DATE('0 ----------------- 11/01/95 00:00:00 1 row selected. Elapsed: 00:00:00.01 SQL> select biosql_to_date('01-NOV-1995') from dual; BIOSQL_TO_DATE('0 ----------------- 11/01/95 00:00:00 1 row selected. Elapsed: 00:00:00.01 Obviously, if you query using this or a similar function, the query optimizer will do a full table scan and not use an index on bioentry_qualifier_value. However, you can create a function index on bioentry_qualifier_value.value using the above function, and queries using the same function will then be indexed. In that case you would need to make a small amendment to the function above by catching the exception that results from parsing strings that aren't dates and then return NULL instead. (Oracle does not index NULLs. Unlike in PostgreSQL, you cannot have partial indexes in Oracle AFAIK, i.e., in Oracle the index creation statement cannot contain a WHERE clause.) Does this help? -hilmar On Mar 31, 2005, at 1:07 AM, mark.schreiber@novartis.com wrote: > Hello - > > Many records that might be stored in BioSQL have associated date > fields. > Biojava stores these as value in bioentry_qualifier_value with the > term_id > pointing to the Term for date. > > This seems to place a serious limitation on searching by date. I would > like to be able to search for sequences entered between X and Y or > before > X etc. Has anyone come up with a workaround for date operations on > VarChar2 or Strings? > > Thanks > > Mark Schreiber > Principal Scientist (Bioinformatics) > > Novartis Institute for Tropical Diseases (NITD) > 10 Biopolis Road > #05-01 Chromos > Singapore 138670 > www.nitd.novartis.com > > phone +65 6722 2973 > fax +65 6722 2910 > > > ______________________________________________________________________ > The Novartis email address format has changed to > firstname.lastname@novartis.com. Please update your address book > accordingly. > ______________________________________________________________________ > _______________________________________________ > BioSQL-l mailing list > BioSQL-l@open-bio.org > http://open-bio.org/mailman/listinfo/biosql-l > -- ------------------------------------------------------------- Hilmar Lapp email: lapp at gnf.org GNF, San Diego, Ca. 92121 phone: +1-858-812-1757 ------------------------------------------------------------- From mark.schreiber at novartis.com Thu Mar 31 20:00:09 2005 From: mark.schreiber at novartis.com (mark.schreiber@novartis.com) Date: Thu Mar 31 19:54:11 2005 Subject: [BioSQL-l] dates and terms Message-ID: Hello - I guess this is the nearest approximation to a date field. It might be something worth considering for a later version of bioSQL as pretty much all records have one or more dates attached to them. - Mark Hilmar Lapp 04/01/2005 04:39 AM To: Mark Schreiber/GP/Novartis@PH cc: biosql-l@open-bio.org Subject: Re: [BioSQL-l] dates and terms Bioperl-db stores these similarly, but the term is 'date_changed' which basically comes from Bioperl's Bio::Seq::RichSeq. You can compare these dates but it's hard to do so universally for a search against the database. There is a scriptlet scripts/biosql/update-on-new-date.pl in the bioperl-db repository that shows a pretty straightforward approach for comparison. It uses Date::Parse which does a nice job of detecting most date formats automatically. The formats being used are actually I believe not dramatically different. In UniProt, they look like the following: DT 01-NOV-1995 (Rel. 32, Created) DT 01-OCT-1996 (Rel. 34, Last sequence update) DT 28-FEB-2003 (Rel. 41, Last annotation update) and these get stored as an array with the following elements 01-NOV-1995 (Rel. 32, Created) 01-OCT-1996 (Rel. 34, Last sequence update) 28-FEB-2003 (Rel. 41, Last annotation update) Date::Parse will just ignore the non-date stuff in parentheses. I don't know whether there's a similarly convenient library in Java. In Oracle you can specify the date format when converting. So, the following would take everything up to the first space character and convert it assuming the format used above: 1 select to_date(decode(instr('01-NOV-1995 (Rel. 32, Created)',' '), 2 0, 3 '01-NOV-1995 (Rel. 32, Created)', 4 substr('01-NOV-1995 (Rel. 32, Created)', 5 1, 6 instr('01-NOV-1995 (Rel. 32, Created)', 7 ' ') 8 ) 9 ), 10 'dd-mon-yyyy') 11* from dual SQL> / TO_DATE(DECODE(IN ----------------- 11/01/95 00:00:00 1 row selected. The DECODE() protects from cases when there is nothing following the date. If this looks too messy, hide it in a function: 1 CREATE OR REPLACE 2 FUNCTION biosql_to_date(qual_value IN VARCHAR2, 3 date_format IN VARCHAR2 DEFAULT 'dd-mon-yyyy') 4 RETURN DATE 5 IS 6 spacepos INTEGER; 7 BEGIN 8 spacepos := INSTR(qual_value,' '); 9 IF spacepos = 0 THEN 10 RETURN TO_DATE(qual_value,date_format); 11 END IF; 12 RETURN TO_DATE(SUBSTR(qual_value,1,spacepos), 13 date_format); 14* END; SQL> / Function created. Elapsed: 00:00:00.60 SQL> select biosql_to_date('01-NOV-1995 (Rel. 32, Created)') from dual; BIOSQL_TO_DATE('0 ----------------- 11/01/95 00:00:00 1 row selected. Elapsed: 00:00:00.01 SQL> select biosql_to_date('01-NOV-1995') from dual; BIOSQL_TO_DATE('0 ----------------- 11/01/95 00:00:00 1 row selected. Elapsed: 00:00:00.01 Obviously, if you query using this or a similar function, the query optimizer will do a full table scan and not use an index on bioentry_qualifier_value. However, you can create a function index on bioentry_qualifier_value.value using the above function, and queries using the same function will then be indexed. In that case you would need to make a small amendment to the function above by catching the exception that results from parsing strings that aren't dates and then return NULL instead. (Oracle does not index NULLs. Unlike in PostgreSQL, you cannot have partial indexes in Oracle AFAIK, i.e., in Oracle the index creation statement cannot contain a WHERE clause.) Does this help? -hilmar On Mar 31, 2005, at 1:07 AM, mark.schreiber@novartis.com wrote: > Hello - > > Many records that might be stored in BioSQL have associated date > fields. > Biojava stores these as value in bioentry_qualifier_value with the > term_id > pointing to the Term for date. > > This seems to place a serious limitation on searching by date. I would > like to be able to search for sequences entered between X and Y or > before > X etc. Has anyone come up with a workaround for date operations on > VarChar2 or Strings? > > Thanks > > Mark Schreiber > Principal Scientist (Bioinformatics) > > Novartis Institute for Tropical Diseases (NITD) > 10 Biopolis Road > #05-01 Chromos > Singapore 138670 > www.nitd.novartis.com > > phone +65 6722 2973 > fax +65 6722 2910 > > > ______________________________________________________________________ > The Novartis email address format has changed to > firstname.lastname@novartis.com. Please update your address book > accordingly. > ______________________________________________________________________ > _______________________________________________ > BioSQL-l mailing list > BioSQL-l@open-bio.org > http://open-bio.org/mailman/listinfo/biosql-l > -- ------------------------------------------------------------- Hilmar Lapp email: lapp at gnf.org GNF, San Diego, Ca. 92121 phone: +1-858-812-1757 ------------------------------------------------------------- ______________________________________________________________________ The Novartis email address format has changed to firstname.lastname@novartis.com. Please update your address book accordingly. ______________________________________________________________________