From bugzilla-daemon at portal.open-bio.org Fri Jun 1 01:59:55 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Fri, 1 Jun 2007 01:59:55 -0400
Subject: [Bioperl-guts-l] [Bug 2304] Two more methods in Bio/SimpleAlign.pm
In-Reply-To:
Message-ID: <200706010559.l515xt1H003371@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2304
------- Comment #1 from online at davemessina.com 2007-06-01 01:59 EST -------
Hi,
Thanks for your contribution!
I think adding these methods is a great idea. BioPerl 1.4 is no longer being
actively developed, though (it's >3 years out of date), so perhaps we could add
them to the current version instead?
Heikki is the maintainer for SimpleAlign, so he should probably weigh in on
this...
Dave
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Fri Jun 1 02:42:59 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Fri, 1 Jun 2007 02:42:59 -0400
Subject: [Bioperl-guts-l] [Bug 2304] Two more methods in Bio/SimpleAlign.pm
In-Reply-To:
Message-ID: <200706010642.l516gxML005554@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2304
------- Comment #2 from bix at sendu.me.uk 2007-06-01 02:42 EST -------
Rather than two new methods I think this could be better implemented as options
to one of the other percentage_identity methods. And isn't there a more
appropriate way of getting the alphabet?
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From sendu at dev.open-bio.org Fri Jun 1 04:03:53 2007
From: sendu at dev.open-bio.org (Senduran Balasubramaniam)
Date: Fri, 01 Jun 2007 08:03:53 +0000
Subject: [Bioperl-guts-l] bioperl-run/Bio/Tools/Run/Alignment Clustalw.pm,
1.51, 1.52
Message-ID: <200706010803.l5183rml007326@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-run/Bio/Tools/Run/Alignment
In directory dev.open-bio.org:/tmp/cvs-serv7300/Bio/Tools/Run/Alignment
Modified Files:
Clustalw.pm
Log Message:
reimplemented to use _set_from_args() and _setparams(); documentation corrections; now parses alignment score and stores it
Index: Clustalw.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-run/Bio/Tools/Run/Alignment/Clustalw.pm,v
retrieving revision 1.51
retrieving revision 1.52
diff -C2 -d -r1.51 -r1.52
*** Clustalw.pm 16 Feb 2007 18:30:47 -0000 1.51
--- Clustalw.pm 1 Jun 2007 08:03:51 -0000 1.52
***************
*** 336,339 ****
--- 336,340 ----
Jason Stajich jason-AT-bioperl_DOT_org
+ Sendu Bala bix at sendu.me.uk
=head1 APPENDIX
***************
*** 348,354 ****
package Bio::Tools::Run::Alignment::Clustalw;
- use vars qw($AUTOLOAD @ISA $PROGRAM_DIR $PROGRAM_NAME
- @CLUSTALW_SWITCHES @CLUSTALW_PARAMS
- @OTHER_SWITCHES %OK_FIELD);
use strict;
use Bio::Seq;
--- 349,352 ----
***************
*** 357,385 ****
use Bio::AlignIO;
use Bio::TreeIO;
- use Bio::Root::Root;
use Bio::Root::IO;
- use Bio::Tools::Run::WrapperBase;
! @ISA = qw(Bio::Root::Root Bio::Tools::Run::WrapperBase);
! BEGIN {
! @CLUSTALW_PARAMS = qw(OUTPUT KTUPLE TOPDIAGS WINDOW PAIRGAP FIXEDGAP
! FLOATGAP MATRIX TYPE TRANSIT DNAMATRIX OUTFILE
! GAPOPEN GAPEXT MAXDIV GAPDIST HGAPRESIDUES PWMATRIX
! PWDNAMATRIX PWGAPOPEN PWGAPEXT SCORE TRANSWEIGHT
! SEED HELIXGAP OUTORDER STRANDGAP LOOPGAP TERMINALGAP
! HELIXENDIN HELIXENDOUT STRANDENDIN STRANDENDOUT PROGRAM
! REPS OUTPUTTREE SEED BOOTLABELS BOOTSTRAP);
- @CLUSTALW_SWITCHES = qw(HELP CHECK OPTIONS NEGATIVE NOWEIGHTS ENDGAPS
- NOPGAP NOHGAP NOVGAP KIMURA TOSSGAPS
- KIMURA TOSSGAPS NJTREE);
- $PROGRAM_NAME = 'clustalw';
- $PROGRAM_DIR = $ENV{'CLUSTALDIR'} || $ENV{'CLUSTALWDIR'};
- @OTHER_SWITCHES = qw(QUIET);
- # Authorize attribute fields
- foreach my $attr ( @CLUSTALW_PARAMS, @CLUSTALW_SWITCHES,
- @OTHER_SWITCHES ) { $OK_FIELD{$attr}++; }
- }
=head2 program_name
--- 355,377 ----
use Bio::AlignIO;
use Bio::TreeIO;
use Bio::Root::IO;
! use base qw(Bio::Root::Root Bio::Tools::Run::WrapperBase);
! our @CLUSTALW_PARAMS = qw(output ktuple topdiags window pairgap fixedgap
! floatgap matrix type transit dnamatrix outfile
! gapopen gapext maxdiv gapdist hgapresidues pwmatrix
! pwdnamatrix pwgapopen pwgapext score transweight
! seed helixgap outorder strandgap loopgap terminalgap
! helixendin helixendout strandendin strandendout program
! reps outputtree seed bootlabels bootstrap);
!
! our @CLUSTALW_SWITCHES = qw(help check options negative noweights endgaps
! nopgap nohgap novgap kimura tossgaps
! kimura tossgaps njtree);
! our @OTHER_SWITCHES = qw(quiet);
! our $PROGRAM_NAME = 'clustalw';
! our $PROGRAM_DIR = $ENV{'CLUSTALDIR'} || $ENV{'CLUSTALWDIR'};
=head2 program_name
***************
*** 415,438 ****
my $self = $class->SUPER::new(@args);
! my ($attr, $value);
! while (@args) {
! $attr = shift @args;
! $value = shift @args;
! next if( $attr =~ /^-/ ); # don't want named parameters
! $self->$attr($value);
! }
return $self;
}
- sub AUTOLOAD {
- my $self = shift;
- my $attr = $AUTOLOAD;
- $attr =~ s/.*:://;
- $attr = uc $attr;
- $self->throw("Unallowed parameter: $attr !") unless $OK_FIELD{$attr};
- $self->{$attr} = shift if @_;
- return $self->{$attr};
- }
-
=head2 version
--- 407,418 ----
my $self = $class->SUPER::new(@args);
! $self->_set_from_args(\@args, -methods => [@CLUSTALW_PARAMS,
! @CLUSTALW_SWITCHES,
! @OTHER_SWITCHES],
! -create => 1);
!
return $self;
}
=head2 version
***************
*** 475,487 ****
my ($temp,$infilename, $seq);
my ($attr, $value, $switch);
!
$self->io->_io_cleanup();
# Create input file pointer
$infilename = $self->_setinput($input);
! if (!$infilename) {$self->throw("Bad input data (sequences need an id ) or less than 2 sequences in $input !");}
!
# Create parameter string to pass to clustalw program
my $param_string = $self->_setparams();
!
# run clustalw
return $self->_run('both', $infilename, $param_string);
--- 455,467 ----
my ($temp,$infilename, $seq);
my ($attr, $value, $switch);
!
$self->io->_io_cleanup();
# Create input file pointer
$infilename = $self->_setinput($input);
! $self->throw("Bad input data (sequences need an id) or less than 2 sequences in $input!") unless $infilename;
!
# Create parameter string to pass to clustalw program
my $param_string = $self->_setparams();
!
# run clustalw
return $self->_run('both', $infilename, $param_string);
***************
*** 491,502 ****
Title : align
! Usage :
! $inputfilename = 't/data/cysprot.fa';
! $aln = $factory->align($inputfilename);
! or
! $seq_array_ref = \@seq_array; @seq_array is array of Seq objs
! $aln = $factory->align($seq_array_ref);
Function: Perform a multiple sequence alignment
- Example :
Returns : Reference to a SimpleAlign object containing the
sequence alignment.
--- 471,480 ----
Title : align
! Usage : $inputfilename = 't/data/cysprot.fa';
! $aln = $factory->align($inputfilename);
! or
! $seq_array_ref = \@seq_array; # @seq_array is array of Seq objs
! $aln = $factory->align($seq_array_ref);
Function: Perform a multiple sequence alignment
Returns : Reference to a SimpleAlign object containing the
sequence alignment.
***************
*** 514,529 ****
sub align {
my ($self,$input) = @_;
!
$self->io->_io_cleanup();
# Create input file pointer
my $infilename = $self->_setinput($input);
! if (!$infilename) {$self->throw("Bad input data (sequences need an id ) or less than 2 sequences in $input !");}
!
# Create parameter string to pass to clustalw program
my $param_string = $self->_setparams();
!
# run clustalw
! my $aln = $self->_run('align', $infilename,$param_string);
}
--- 492,507 ----
sub align {
my ($self,$input) = @_;
!
$self->io->_io_cleanup();
# Create input file pointer
my $infilename = $self->_setinput($input);
! $self->throw("Bad input data (sequences need an id ) or less than 2 sequences in $input !") unless $infilename;
!
# Create parameter string to pass to clustalw program
my $param_string = $self->_setparams();
!
# run clustalw
! my $aln = $self->_run('align', $infilename, $param_string);
}
***************
*** 532,541 ****
Title : profile_align
! Usage :
Function: Perform an alignment of 2 (sub)alignments
- Example :
Returns : Reference to a SimpleAlign object containing the (super)alignment.
Args : Names of 2 files containing the subalignments
! or references to 2 Bio::SimpleAlign objects.
Throws an exception if arguments are not either strings (eg filenames)
--- 510,520 ----
Title : profile_align
! Usage : $aln = $factory->profile_align(@simple_aligns);
! or
! $aln = $factory->profile_align(@subalignment_filenames);
Function: Perform an alignment of 2 (sub)alignments
Returns : Reference to a SimpleAlign object containing the (super)alignment.
Args : Names of 2 files containing the subalignments
! or references to 2 Bio::SimpleAlign objects.
Throws an exception if arguments are not either strings (eg filenames)
***************
*** 546,562 ****
sub profile_align {
my ($self,$input1,$input2) = @_;
!
$self->io->_io_cleanup();
# Create input file pointer
! my $infilename1 = $self->_setinput($input1,1);
! my $infilename2 = $self->_setinput($input2,2);
if (!$infilename1 || !$infilename2) {$self->throw("Bad input data: $input1 or $input2 !");}
unless ( -e $infilename1 and -e $infilename2) {$self->throw("Bad input file: $input1 or $input2 !");}
!
# Create parameter string to pass to clustalw program
my $param_string = $self->_setparams();
# run clustalw
! my $aln = $self->_run('profile-aln', $infilename1,
! $infilename2, $param_string);
}
--- 525,542 ----
sub profile_align {
my ($self,$input1,$input2) = @_;
!
$self->io->_io_cleanup();
+
# Create input file pointer
! my $infilename1 = $self->_setinput($input1, 1);
! my $infilename2 = $self->_setinput($input2, 2);
if (!$infilename1 || !$infilename2) {$self->throw("Bad input data: $input1 or $input2 !");}
unless ( -e $infilename1 and -e $infilename2) {$self->throw("Bad input file: $input1 or $input2 !");}
!
# Create parameter string to pass to clustalw program
my $param_string = $self->_setparams();
+
# run clustalw
! my $aln = $self->_run('profile-aln', $infilename1, $infilename2, $param_string);
}
***************
*** 571,581 ****
'bootlabels'=> 'nodes',
'quiet' => 1);
! $factory = Bio::Tools::Run::Alignment::Clustalw->new(@params);
! $tree_obj = $factory->tree($aln_obj);
! or
! $tree_obj = $factory->tree($treefilename);
! Function:
Returns : Bio::TreeIO object
! Args :
=cut
--- 551,561 ----
'bootlabels'=> 'nodes',
'quiet' => 1);
! $factory = Bio::Tools::Run::Alignment::Clustalw->new(@params);
! $tree_obj = $factory->tree($aln_obj);
! or
! $tree_obj = $factory->tree($treefilename);
! Function: Retrieve a tree corresponding to the input
Returns : Bio::TreeIO object
! Args : Bio::SimpleAlign or filename of a tree
=cut
***************
*** 606,610 ****
those regions along a sliding window who's tree length differs
significantly from the total average tree length.
! Returns : list of SimpleAlign objects
Args : first argument as per run(), optional second argument to specify
the size of the sliding window (default 5 bp) and optional third
--- 586,590 ----
those regions along a sliding window who's tree length differs
significantly from the total average tree length.
! Returns : list of Bio::SimpleAlign objects
Args : first argument as per run(), optional second argument to specify
the size of the sliding window (default 5 bp) and optional third
***************
*** 660,667 ****
=head2 _run
! Title : _run
! Usage : Internal function, not to be called directly
! Function: makes actual system call to clustalw program
! Example :
Returns : nothing; clustalw output is written to a
temporary file
--- 640,646 ----
=head2 _run
! Title : _run
! Usage : Internal function, not to be called directly
! Function: makes actual system call to clustalw program
Returns : nothing; clustalw output is written to a
temporary file
***************
*** 669,714 ****
and hash of parameters to be passed to clustalw
-
=cut
sub _run {
! my ($self,$command,$infile1,$infile2,$param_string) = @_;
my ($instring, $tree);
if ($command =~ /align|both/) {
!
! if( $^O eq 'dec_osf' ) {
! $instring = "$infile1";
! $command = '';
! } else {
! $instring = " -infile=$infile1";
! }
! $param_string .= " $infile2";
}
!
if ($command =~ /profile/) {
! $instring = "-profile1=$infile1 -profile2=$infile2";
! chmod 0777, $infile1,$infile2;
$command = '-profile';
}
!
if ($command =~ /tree/) {
if( $^O eq 'dec_osf' ) {
! $instring = "$infile1";
! $command = '';
! } else {
! $instring = " $infile1";
! }
$param_string .= " $infile2";
!
$self->debug( "Program ".$self->executable."\n");
my $commandstring = $self->executable."$instring"."$param_string";
$self->debug( "clustal command = $commandstring");
! my $status = system($commandstring);
! unless( $status == 0 ) {
! $self->warn( "Clustalw call ($commandstring) crashed: $? \n");
! return undef;
! }
!
return $self->_get_tree($infile1, $param_string);
}
--- 648,697 ----
and hash of parameters to be passed to clustalw
=cut
sub _run {
! my ($self, $command, $infile1, $infile2, $param_string) = @_;
!
my ($instring, $tree);
+ my $quiet = $self->quiet() || $self->verbose() < 0;
if ($command =~ /align|both/) {
! if ($^O eq 'dec_osf') {
! $instring = $infile1;
! $command = '';
! }
! else {
! $instring = " -infile=$infile1";
! }
! $param_string .= " $infile2";
}
!
if ($command =~ /profile/) {
! $instring = "-profile1=$infile1 -profile2=$infile2";
! chmod 0777, $infile1, $infile2;
$command = '-profile';
}
!
if ($command =~ /tree/) {
if( $^O eq 'dec_osf' ) {
! $instring = $infile1;
! $command = '';
! }
! else {
! $instring = " $infile1";
! }
$param_string .= " $infile2";
!
$self->debug( "Program ".$self->executable."\n");
my $commandstring = $self->executable."$instring"."$param_string";
+ $commandstring .= ' 1>/dev/null' if $quiet;
$self->debug( "clustal command = $commandstring");
!
! my $status = system($commandstring);
! unless( $status == 0 ) {
! $self->warn( "Clustalw call ($commandstring) crashed: $? \n");
! return undef;
! }
!
return $self->_get_tree($infile1, $param_string);
}
***************
*** 716,741 ****
my $output = $self->output || 'gcg';
$self->debug( "Program ".$self->executable."\n");
! my $commandstring = $self->executable." $command"." $instring".
! " -output=$output". " $param_string";
!
$self->debug( "clustal command = $commandstring");
! my $status = system($commandstring);
! unless( $status == 0 ) {
! $self->warn( "Clustalw call ($commandstring) crashed: $? \n");
! return undef;
}
!
my $outfile = $self->outfile();
!
# retrieve alignment (Note: MSF format for AlignIO = GCG format of clustalw)
-
my $format = $output =~ /gcg/i ? 'msf' : $output;
! if( $format =~ /clustal/i ) {
! $format = 'clustalw'; # force clustalw incase 'clustal' is requested
}
! my $in = Bio::AlignIO->new(-file => $outfile,
! -format=> $format);
my $aln = $in->next_aln();
$in->close;
if ($command eq 'both') {
--- 699,729 ----
my $output = $self->output || 'gcg';
$self->debug( "Program ".$self->executable."\n");
! my $commandstring = $self->executable." $command"." $instring"." -output=$output". " $param_string";
$self->debug( "clustal command = $commandstring");
!
! open(my $pipe, "$commandstring |") || $self->throw("ClustalW call ($commandstring) failed to start: $? | $!");
! my $score;
! while (<$pipe>) {
! print unless $quiet;
! # Kevin Brown suggested the following regex, though it matches multiple
! # times: we pick up the last one
! $score = $1 if ($_ =~ /Score:(\d+)/);
! # This one is printed at the end and seems the most appropriate to pick
! # up; we include the above regex incase 'Alignment Score' isn't given
! $score = $1 if ($_ =~ /Alignment Score (\d+)/);
}
! close($pipe) || ($self->throw("ClustalW call ($commandstring) crashed: $?"));
!
my $outfile = $self->outfile();
!
# retrieve alignment (Note: MSF format for AlignIO = GCG format of clustalw)
my $format = $output =~ /gcg/i ? 'msf' : $output;
! if ($format =~ /clustal/i) {
! $format = 'clustalw'; # force clustalw incase 'clustal' is requested
}
! my $in = Bio::AlignIO->new(-file => $outfile, -format=> $format);
my $aln = $in->next_aln();
$in->close;
+ $aln->score($score);
if ($command eq 'both') {
***************
*** 746,753 ****
# Replace file suffix with dnd to find name of dendrogram file(s) to delete
unless ( $self->save_tempfiles ) {
! foreach my $f ( $infile1, $infile2 ) {
! $f =~ s/\.[^\.]*$// ;
! unlink $f .'.dnd' if( $f ne '' );
! }
}
--- 734,741 ----
# Replace file suffix with dnd to find name of dendrogram file(s) to delete
unless ( $self->save_tempfiles ) {
! foreach my $f ($infile1, $infile2) {
! $f =~ s/\.[^\.]*$// ;
! unlink $f .'.dnd' if ($f ne '');
! }
}
***************
*** 761,768 ****
my ($self, $treefile, $param_string) = @_;
! if ($param_string =~ /-bootstrap/ ) {
$treefile .= '.phb';
}
! elsif( $param_string =~ /-tree/ ) {
$treefile .= '.ph';
}
--- 749,756 ----
my ($self, $treefile, $param_string) = @_;
! if ($param_string =~ /-bootstrap/) {
$treefile .= '.phb';
}
! elsif ($param_string =~ /-tree/) {
$treefile .= '.ph';
}
***************
*** 787,798 ****
=head2 _setinput()
! Title : _setinput
! Usage : Internal function, not to be called directly
! Function: Create input file for clustalw program
! Example :
Returns : name of file containing clustalw data input
Args : Seq or Align object reference or input file name
-
=cut
--- 775,784 ----
=head2 _setinput()
! Title : _setinput
! Usage : Internal function, not to be called directly
! Function: Create input file for clustalw program
Returns : name of file containing clustalw data input
Args : Seq or Align object reference or input file name
=cut
***************
*** 800,868 ****
my ($self, $input, $suffix) = @_;
my ($infilename, $seq, $temp, $tfh);
!
# suffix is used to distinguish alignment files If $input is not a
# reference it better be the name of a file with the sequence/
!
! # alignment data...
!
unless (ref $input) {
! # check that file exists or throw
! $infilename = $input;
! unless (-e $input) {return 0;}
! return $infilename;
}
!
! # $input may be an array of BioSeq objects...
if (ref($input) eq "ARRAY") {
# Open temporary file for both reading & writing of BioSeq array
! ($tfh,$infilename) = $self->io->tempfile(-dir=>$self->tempdir);
! $temp = Bio::SeqIO->new('-fh'=>$tfh,
! '-format' =>'Fasta');
! # Need at least 2 seqs for alignment
! unless (scalar(@$input) > 1) {return 0;}
!
! foreach $seq (@$input) {
! unless (defined $seq &&
! $seq->isa("Bio::PrimarySeqI") and $seq->id() )
! {return 0;}
! $temp->write_seq($seq);
! }
! $temp->close();
! close($tfh);
! undef $tfh;
! return $infilename;
}
! # $input may be a SimpleAlign object.
elsif (ref($input) eq "Bio::SimpleAlign") {
! # Open temporary file for both reading & writing of SimpleAlign object
! ($tfh,$infilename) = $self->io->tempfile(-dir=>$self->tempdir);
! $temp = Bio::AlignIO->new('-fh'=> $tfh,
! '-format' => 'fasta');
! $temp->write_aln($input);
! close($tfh);
! undef $tfh;
! return $infilename;
}
!
! # or $input may be a single BioSeq object (to be added to a previous alignment)
elsif (ref($input) && $input->isa("Bio::PrimarySeqI") && $suffix==2) {
! # Open temporary file for both reading & writing of BioSeq object
! ($tfh,$infilename) = $self->io->tempfile();
! $temp = Bio::SeqIO->new(-fh=> $tfh, '-format' =>'Fasta');
! $temp->write_seq($input);
! close($tfh);
! undef $tfh;
! return $infilename;
}
! return 0;
}
=head2 _setparams()
! Title : _setparams
! Usage : Internal function, not to be called directly
! Function: Create parameter inputs for clustalw program
! Example :
Returns : parameter string to be passed to clustalw
during align or profile_align
--- 786,850 ----
my ($self, $input, $suffix) = @_;
my ($infilename, $seq, $temp, $tfh);
!
# suffix is used to distinguish alignment files If $input is not a
# reference it better be the name of a file with the sequence/
!
! # alignment data...
unless (ref $input) {
! # check that file exists or throw
! $infilename = $input;
! return unless -e $input;
! return $infilename;
}
!
! # $input may be an array of BioSeq objects...
if (ref($input) eq "ARRAY") {
# Open temporary file for both reading & writing of BioSeq array
! ($tfh,$infilename) = $self->io->tempfile(-dir=>$self->tempdir);
! $temp = Bio::SeqIO->new('-fh'=>$tfh, '-format' =>'Fasta');
! # Need at least 2 seqs for alignment
! return unless (scalar(@$input) > 1);
!
! foreach $seq (@$input) {
! return unless (defined $seq && $seq->isa("Bio::PrimarySeqI") and $seq->id());
! $temp->write_seq($seq);
! }
! $temp->close();
! close($tfh);
! undef $tfh;
! return $infilename;
}
!
! # $input may be a SimpleAlign object.
elsif (ref($input) eq "Bio::SimpleAlign") {
! # Open temporary file for both reading & writing of SimpleAlign object
! ($tfh,$infilename) = $self->io->tempfile(-dir=>$self->tempdir);
! $temp = Bio::AlignIO->new('-fh'=> $tfh, '-format' => 'fasta');
! $temp->write_aln($input);
! close($tfh);
! undef $tfh;
! return $infilename;
}
!
! # or $input may be a single BioSeq object (to be added to a previous alignment)
elsif (ref($input) && $input->isa("Bio::PrimarySeqI") && $suffix==2) {
! # Open temporary file for both reading & writing of BioSeq object
! ($tfh,$infilename) = $self->io->tempfile();
! $temp = Bio::SeqIO->new(-fh=> $tfh, '-format' =>'Fasta');
! $temp->write_seq($input);
! close($tfh);
! undef $tfh;
! return $infilename;
}
!
! return;
}
=head2 _setparams()
! Title : _setparams
! Usage : Internal function, not to be called directly
! Function: Create parameter inputs for clustalw program
Returns : parameter string to be passed to clustalw
during align or profile_align
***************
*** 872,917 ****
sub _setparams {
! my ($attr, $value, $self);
!
! $self = shift;
!
! my $param_string = "";
! for $attr ( @CLUSTALW_PARAMS ) {
! $value = $self->$attr();
! next unless (defined $value);
! my $attr_key = lc $attr; #put params in format expected by clustalw
! $attr_key = ' -'.$attr_key;
! $param_string .= $attr_key.'='.$value;
! }
!
! for $attr ( @CLUSTALW_SWITCHES) {
! $value = $self->$attr();
! next unless ($value);
! my $attr_key = lc $attr; #put switches in format expected by clustalw
! $attr_key = ' -'.$attr_key;
! $param_string .= $attr_key ;
! # $attr_key = '-'.$attr_key;
! # $param_string .= '"'.$attr_key.'",';
! }
!
! # Set default output file if no explicit output file selected
unless ($param_string =~ /outfile/) {
! my ($tfh, $outfile) = $self->io->tempfile(-dir=>$self->tempdir());
! close($tfh);
! undef $tfh;
! $self->outfile($outfile);
! $param_string .= " -outfile=$outfile" ;
}
! if ($self->quiet() || $self->verbose() < 0) {
! if ($^O =~ /mswin/i) { $param_string .= ' >'.$self->outfile().'out'; }
! elsif ($^O =~ /unix|linux|darwin/i) { $param_string .= ' >/dev/null 2>/dev/null'; }
! else {
! $self->warn("unknown os $^O\n");
! }
! }
return $param_string;
}
! 1; # Needed to keep compiler happy
--- 854,878 ----
sub _setparams {
! my $self = shift;
!
! my $param_string = $self->SUPER::_setparams(-params => \@CLUSTALW_PARAMS,
! -switches => \@CLUSTALW_SWITCHES,
! -dash => 1,
! -lc => 1,
! -join => '=');
!
! # Set default output file if no explicit output file selected
unless ($param_string =~ /outfile/) {
! my ($tfh, $outfile) = $self->io->tempfile(-dir => $self->tempdir());
! close($tfh);
! undef $tfh;
! $self->outfile($outfile);
! $param_string .= " -outfile=$outfile" ;
}
! $param_string .= ' 2>&1';
return $param_string;
}
! 1;
From sendu at dev.open-bio.org Fri Jun 1 04:04:23 2007
From: sendu at dev.open-bio.org (Senduran Balasubramaniam)
Date: Fri, 01 Jun 2007 08:04:23 +0000
Subject: [Bioperl-guts-l] bioperl-run/t Clustalw.t,1.35,1.36
Message-ID: <200706010804.l5184N63007360@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-run/t
In directory dev.open-bio.org:/tmp/cvs-serv7334/t
Modified Files:
Clustalw.t
Log Message:
tidy up; test that score is set on the alignment
Index: Clustalw.t
===================================================================
RCS file: /home/repository/bioperl/bioperl-run/t/Clustalw.t,v
retrieving revision 1.35
retrieving revision 1.36
diff -C2 -d -r1.35 -r1.36
*** Clustalw.t 13 Dec 2006 19:08:15 -0000 1.35
--- Clustalw.t 1 Jun 2007 08:04:21 -0000 1.36
***************
*** 6,14 ****
BEGIN {
- # Things to do ASAP once the script is run
- # even before anything else in the file is parsed
- #use vars qw($NUMTESTS $DEBUG $error);
- #$DEBUG = $ENV{'BIOIPERLDEBUG'} || 0;
-
# Use installed Test module, otherwise fall back
# to copy of Test.pm located in the t dir
--- 6,9 ----
***************
*** 18,30 ****
}
- # Currently no errors
- #$error = 0;
-
# Setup Test::More and plan the number of tests
! use Test::More tests=>42;
- # Use modules that are needed in this test that are from
- # any of the Bioperl packages: Bioperl-core, Bioperl-run ... etc
- # use_ok('');
use_ok('Bio::Tools::Run::Alignment::Clustalw');
use_ok('Bio::SimpleAlign');
--- 13,19 ----
}
# Setup Test::More and plan the number of tests
! use Test::More tests => 43;
use_ok('Bio::Tools::Run::Alignment::Clustalw');
use_ok('Bio::SimpleAlign');
***************
*** 43,56 ****
ok( -e $profile2, 'Found profile2 file' );
- # setup output files etc
- # none in this test
-
# setup global objects that are to be used in more than one test
# Also test they were initialised correctly
! my @params = (
! 'ktuple' => 3,
! 'quiet' => 1,
! #-verbose => $verbose,
! );
my $factory = Bio::Tools::Run::Alignment::Clustalw->new(@params);
isa_ok( $factory, 'Bio::Tools::Run::Alignment::Clustalw');
--- 32,38 ----
ok( -e $profile2, 'Found profile2 file' );
# setup global objects that are to be used in more than one test
# Also test they were initialised correctly
! my @params = ('ktuple' => 3, 'quiet' => 1);
my $factory = Bio::Tools::Run::Alignment::Clustalw->new(@params);
isa_ok( $factory, 'Bio::Tools::Run::Alignment::Clustalw');
***************
*** 65,79 ****
is( $factory->program_name(), 'clustalw', 'Correct exe default name' );
- # block of tests to skip if you know the tests will fail
- # under some condition. E.g.:
- # Need network access,
- # Wont work on particular OS,
- # Cant find the exectuable
- # DO NOT just skip tests that seem to fail for an unknown reason
SKIP: {
! # condition used to skip this block of tests
! #skip($why, $how_many_in_block);
! skip("Couldn't find the executable", 16)
! unless defined $factory->executable();
# test all factory methods dependent on finding the executable
--- 47,52 ----
is( $factory->program_name(), 'clustalw', 'Correct exe default name' );
SKIP: {
! skip("Couldn't find the executable", 16) unless defined $factory->executable();
# test all factory methods dependent on finding the executable
***************
*** 91,100 ****
isa_ok( $aln, 'Bio::SimpleAlign');
is( $aln->no_sequences, 7, 'Correct number of seqs returned' );
# test execution using an array of Seq objects
! my $str = Bio::SeqIO->new(
! '-file' => $inputfilename,
! '-format' => 'Fasta',
! );
my @seq_array =();
while ( my $seq = $str->next_seq() ) {
--- 64,71 ----
isa_ok( $aln, 'Bio::SimpleAlign');
is( $aln->no_sequences, 7, 'Correct number of seqs returned' );
+ is $aln->score, 16047, 'Score';
# test execution using an array of Seq objects
! my $str = Bio::SeqIO->new('-file' => $inputfilename, '-format' => 'Fasta');
my @seq_array =();
while ( my $seq = $str->next_seq() ) {
From lapp at dev.open-bio.org Sat Jun 2 21:57:05 2007
From: lapp at dev.open-bio.org (Hilmar Lapp)
Date: Sun, 03 Jun 2007 01:57:05 +0000
Subject: [Bioperl-guts-l] bioperl-db/Bio/DB DBContextI.pm, 1.3,
1.4 SimpleDBContext.pm, 1.8, 1.9
Message-ID: <200706030157.l531v5Ea010370@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-db/Bio/DB
In directory dev.open-bio.org:/tmp/cvs-serv10347/Bio/DB
Modified Files:
DBContextI.pm SimpleDBContext.pm
Log Message:
Adding support for schemas in PostgreSQL. Though I think this should work,
it is not tested yet.
Index: SimpleDBContext.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-db/Bio/DB/SimpleDBContext.pm,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** SimpleDBContext.pm 4 Jul 2006 04:38:07 -0000 1.8
--- SimpleDBContext.pm 3 Jun 2007 01:57:03 -0000 1.9
***************
*** 106,109 ****
--- 106,112 ----
if supplied, other parameters will not change
or add to the value (see method dsn())
+ -schema the schema under which the database tables
+ reside, if the driver needs this (for example,
+ for PostgreSQL)
=cut
***************
*** 120,123 ****
--- 123,127 ----
$password,
$port,
+ $schema,
) = $self->_rearrange([qw(DSN
DBNAME
***************
*** 127,130 ****
--- 131,135 ----
PASS
PORT
+ SCHEMA
)], at args);
***************
*** 136,139 ****
--- 141,145 ----
$self->password($password) if defined($password);
$self->port($port) if defined($port);
+ $self->schema($schema) if defined($schema);
return $self;
}
***************
*** 365,367 ****
--- 371,392 ----
}
+ =head2 schema
+
+ Title : schema
+ Usage : $dbc->schema($newval)
+ Function: Get/set the schema in which the database tables reside.
+ Example :
+ Returns : value of schema (a scalar)
+ Args : on set, new value (a scalar or undef, optional)
+
+
+ =cut
+
+ sub schema{
+ my $self = shift;
+
+ return $self->{'schema'} = shift if @_;
+ return $self->{'schema'};
+ }
+
1;
Index: DBContextI.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-db/Bio/DB/DBContextI.pm,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** DBContextI.pm 26 Aug 2005 19:34:14 -0000 1.3
--- DBContextI.pm 3 Jun 2007 01:57:03 -0000 1.4
***************
*** 246,248 ****
--- 246,278 ----
}
+ =head2 schema
+
+ Title : schema
+ Usage : $dbc->schema($newval)
+ Function: Get/set the schema in which the database tables reside.
+
+ A schema is typically equivalent to a namespace for a
+ collection of tables within a database. In Oracle, the
+ notion of a schema is synonymous with that of the user (all
+ database objects of a user belong to the schema of the same
+ name as the user) and hence can be omitted. In PostgreSQL,
+ since v7.4 schemas can delineate collections of tables
+ within a database (which in concept is more similar to a
+ user in Oracle).
+
+ For most drivers and database instances this will not be
+ needed.
+
+ Example :
+ Returns : value of schema (a scalar)
+ Args : on set, new value (a scalar or undef, optional)
+
+
+ =cut
+
+ sub schema{
+ my ($self, at args) = @_;
+ $self->throw_not_implemented();
+ }
+
1;
From lapp at dev.open-bio.org Sat Jun 2 21:57:05 2007
From: lapp at dev.open-bio.org (Hilmar Lapp)
Date: Sun, 03 Jun 2007 01:57:05 +0000
Subject: [Bioperl-guts-l] bioperl-db/scripts/biosql load_ontology.pl, 1.11,
1.12 load_seqdatabase.pl, 1.24, 1.25
Message-ID: <200706030157.l531v5aT010377@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-db/scripts/biosql
In directory dev.open-bio.org:/tmp/cvs-serv10347/scripts/biosql
Modified Files:
load_ontology.pl load_seqdatabase.pl
Log Message:
Adding support for schemas in PostgreSQL. Though I think this should work,
it is not tested yet.
Index: load_ontology.pl
===================================================================
RCS file: /home/repository/bioperl/bioperl-db/scripts/biosql/load_ontology.pl,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** load_ontology.pl 24 Sep 2005 04:02:25 -0000 1.11
--- load_ontology.pl 3 Jun 2007 01:57:03 -0000 1.12
***************
*** 107,110 ****
--- 107,117 ----
being used.
+ =item --schema schemaname
+
+ The schema under which the BioSQL tables reside in the database. For
+ Oracle and MySQL this is synonymous with the user, and won't have an
+ effect. PostgreSQL since v7.4 supports schemas as the namespace for
+ collections of tables within a database.
+
=item --initrc paramfile
***************
*** 361,364 ****
--- 368,372 ----
my $driver;
my $dbpass;
+ my $schema;
my $format = 'goflat';
my $fmtargs = '';
***************
*** 409,412 ****
--- 417,421 ----
'dbpass:s' => \$dbpass,
'dsn=s' => \$dsn,
+ 'schema=s' => \$schema,
'format:s' => \$format,
'fmtargs=s' => \$fmtargs,
***************
*** 506,509 ****
--- 515,519 ----
-pass => $dbpass,
-dsn => $dsn,
+ -schema => $schema,
-initrc => $initrc,
);
Index: load_seqdatabase.pl
===================================================================
RCS file: /home/repository/bioperl/bioperl-db/scripts/biosql/load_seqdatabase.pl,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** load_seqdatabase.pl 19 Jan 2006 21:34:29 -0000 1.24
--- load_seqdatabase.pl 3 Jun 2007 01:57:03 -0000 1.25
***************
*** 87,90 ****
--- 87,97 ----
being used.
+ =item --schema schemaname
+
+ The schema under which the BioSQL tables reside in the database. For
+ Oracle and MySQL this is synonymous with the user, and won't have an
+ effect. PostgreSQL since v7.4 supports schemas as the namespace for
+ collections of tables within a database.
+
=item --initrc paramfile
***************
*** 348,351 ****
--- 355,359 ----
my $driver;
my $dbpass;
+ my $schema;
my $format = 'genbank';
my $fmtargs = '';
***************
*** 396,399 ****
--- 404,408 ----
'dbpass=s' => \$dbpass,
'dsn=s' => \$dsn,
+ 'schema=s' => \$schema,
'format=s' => \$format,
'fmtargs=s' => \$fmtargs,
***************
*** 508,511 ****
--- 517,521 ----
-pass => $dbpass,
-dsn => $dsn,
+ -schema => $schema,
-initrc => $initrc,
);
From lapp at dev.open-bio.org Sat Jun 2 21:57:05 2007
From: lapp at dev.open-bio.org (Hilmar Lapp)
Date: Sun, 03 Jun 2007 01:57:05 +0000
Subject: [Bioperl-guts-l] bioperl-db/Bio/DB/DBI Pg.pm,1.4,1.5
Message-ID: <200706030157.l531v5tS010374@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-db/Bio/DB/DBI
In directory dev.open-bio.org:/tmp/cvs-serv10347/Bio/DB/DBI
Modified Files:
Pg.pm
Log Message:
Adding support for schemas in PostgreSQL. Though I think this should work,
it is not tested yet.
Index: Pg.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-db/Bio/DB/DBI/Pg.pm,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** Pg.pm 4 Jul 2006 04:38:07 -0000 1.4
--- Pg.pm 3 Jun 2007 01:57:03 -0000 1.5
***************
*** 227,229 ****
--- 227,263 ----
}
+ =head2 new_connection
+
+ Title : new_connection
+ Usage :
+ Function: Obtains a new connection handle to the database represented by the
+ the DBContextI object, passing additional args to the DBI->connect()
+ method.
+
+ We need to override this here in order to support setting a
+ schema for PostgreSQL.
+
+ Example :
+ Returns : an open DBI database handle
+ Args : A Bio::DB::DBContextI implementing object. Additional hashref
+ parameter to pass to DBI->connect().
+
+
+ =cut
+
+ sub new_connection{
+ my $self = shift;
+ my ($dbc) = @_; # we don't need the parameter hash here
+
+ my $dbh = $self->SUPER::new_connection(@_);
+ if ($dbc->schema) {
+ my $rv = $dbh->do("SET search_path TO ".$dbc->schema().", public");
+ if (!$rv) {
+ $self->warn("Failed to add schema '".$dbc->schema()
+ ."' to search path; is the server < v7.4?");
+ }
+ }
+ return $dbh;
+ }
+
1;
From lstein at dev.open-bio.org Sun Jun 3 17:19:22 2007
From: lstein at dev.open-bio.org (Lincoln Stein)
Date: Sun, 03 Jun 2007 21:19:22 +0000
Subject: [Bioperl-guts-l] bioperl-live/Bio/Graphics Panel.pm,1.135,1.136
Message-ID: <200706032119.l53LJM29013458@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/Bio/Graphics
In directory dev.open-bio.org:/tmp/cvs-serv13442/Bio/Graphics
Modified Files:
Panel.pm
Log Message:
added optional debug statements to the xyplot glyph
Index: Panel.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/Graphics/Panel.pm,v
retrieving revision 1.135
retrieving revision 1.136
diff -C2 -d -r1.135 -r1.136
*** Panel.pm 23 May 2007 22:42:20 -0000 1.135
--- Panel.pm 3 Jun 2007 21:19:20 -0000 1.136
***************
*** 498,502 ****
);
my %translation_table;
! for my $name ('white','black',keys %COLORS) {
my $idx = $gd->colorAllocate(@{$COLORS{$name}});
$translation_table{$name} = $idx;
--- 498,502 ----
);
my %translation_table;
! for my $name (keys %COLORS) {
my $idx = $gd->colorAllocate(@{$COLORS{$name}});
$translation_table{$name} = $idx;
From lstein at dev.open-bio.org Sun Jun 3 17:19:22 2007
From: lstein at dev.open-bio.org (Lincoln Stein)
Date: Sun, 03 Jun 2007 21:19:22 +0000
Subject: [Bioperl-guts-l] bioperl-live/Bio/Graphics/Glyph xyplot.pm, 1.33,
1.34
Message-ID: <200706032119.l53LJM9R013461@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/Bio/Graphics/Glyph
In directory dev.open-bio.org:/tmp/cvs-serv13442/Bio/Graphics/Glyph
Modified Files:
xyplot.pm
Log Message:
added optional debug statements to the xyplot glyph
Index: xyplot.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/Graphics/Glyph/xyplot.pm,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -d -r1.33 -r1.34
*** xyplot.pm 23 May 2007 22:42:20 -0000 1.33
--- xyplot.pm 3 Jun 2007 21:19:20 -0000 1.34
***************
*** 9,12 ****
--- 9,14 ----
our $VERSION = ${Bio::Root::Version::VERSION};
+ use constant DEBUG=>0;
+
my %SYMBOLS = (
triangle => \&draw_triangle,
***************
*** 106,109 ****
--- 108,112 ----
next unless defined $s;
$_->{_y_position} = $self->score2position($s);
+ warn "y_position = $_->{_y_position}" if DEBUG;
}
my $type = $self->option('graph_type') || $self->option('graphtype') || 'boxes';
***************
*** 155,161 ****
else {
! warn "score = $score, _top = $self->{_top}, _bottom = $self->{_bottom}, max = $self->{_max_score}";
my $position = ($score-$self->{_min_score}) * $self->{_scale};
! warn "position =$position";
return $self->{_bottom} - $position;
}
--- 158,164 ----
else {
! warn "score = $score, _top = $self->{_top}, _bottom = $self->{_bottom}, max = $self->{_max_score}, min=$self->{_min_score}" if DEBUG;
my $position = ($score-$self->{_min_score}) * $self->{_scale};
! warn "position =$position" if DEBUG;
return $self->{_bottom} - $position;
}
***************
*** 168,172 ****
return -min10(-$a) if $a<0;
return max10($a*10)/10 if $a < 1;
!
my $l=int(log10($a));
$l = 10**$l;
--- 171,175 ----
return -min10(-$a) if $a<0;
return max10($a*10)/10 if $a < 1;
!
my $l=int(log10($a));
$l = 10**$l;
***************
*** 180,184 ****
return -max10(-$a) if $a<0;
return min10($a*10)/10 if $a < 1;
!
my $l=int(log10($a));
$l = 10**$l;
--- 183,187 ----
return -max10(-$a) if $a<0;
return min10($a*10)/10 if $a < 1;
!
my $l=int(log10($a));
$l = 10**$l;
***************
*** 275,279 ****
# connect to center positions of each interval
my $first_part = shift @parts;
- # my ($x1,$x2) = ($first_part->{left},$first_part->{left}+$first_part->{width}-1);
my ($x1,$y1,$x2,$y2) = $first_part->calculate_boundaries($left,$top);
my $current_x = ($x1+$x2)/2;
--- 278,281 ----
***************
*** 281,285 ****
for my $part (@parts) {
- # ($x1,$x2) = ($part->{left},$part->{left}+$part->{width}-1);
($x1,$y1,$x2,$y2) = $part->calculate_boundaries($left,$top);
my $next_x = ($x1+$x2)/2;
--- 283,286 ----
***************
*** 307,311 ****
for my $part (@parts) {
- # my ($x1,$x2) = ($part->{left},$part->{left}+$part->{width}-1);
my ($x1,$y1,$x2,$y2) = $part->calculate_boundaries($left,$top);
my $x = ($x1+$x2)/2;
--- 308,311 ----
From bugzilla-daemon at portal.open-bio.org Tue Jun 5 08:49:50 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Tue, 5 Jun 2007 08:49:50 -0400
Subject: [Bioperl-guts-l] [Bug 2305] New: Use of uninitialized value in
pattern match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
Message-ID:
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
Summary: Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line
352, line 4
Product: BioPerl
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Bio::SeqIO
AssignedTo: bioperl-guts-l at bioperl.org
ReportedBy: mmokrejs at ribosome.natur.cuni.cz
$ bp_seqconvert.pl --from genbank --to embl < ~/tmp/pGL3R.gb > ~/tmp/pGL3R.embl
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352, line 4.
-------------------- WARNING ---------------------
MSG: cannot see new qualifier in feature misc_feature: 184, 190, 1
---------------------------------------------------
-------------------- WARNING ---------------------
MSG: Protein sequence found; EMBL is a nucleotide format.
---------------------------------------------------
$
But, the file is a nucleotide file. :( I had some cvs version of bioperl
installed, so lets see what bioperl-1.5.1 does:
$ bp_seqconvert.pl --from genbank --to embl < ~/tmp/pGL3R.gb > ~/tmp/pGL3R.embl
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/vendor_perl/5.8.8/Bio/SeqIO/genbank.pm line 354, line 4.
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/vendor_perl/5.8.8/Bio/SeqIO/genbank.pm line 1241, line
6.
Use of uninitialized value in string eq at
/usr/lib/perl5/vendor_perl/5.8.8/Bio/SeqIO/genbank.pm line 1306, line
7.
Use of uninitialized value in string eq at
/usr/lib/perl5/vendor_perl/5.8.8/Bio/SeqIO/genbank.pm line 1319, line
7.
-------------------- WARNING ---------------------
MSG: cannot see new qualifier in feature misc_feature: 184, 190, 1
---------------------------------------------------
Use of uninitialized value in concatenation (.) or string at
/usr/lib/perl5/vendor_perl/5.8.8/Bio/SeqIO/embl.pm line 531, line 161.
Use of uninitialized value in join or string at
/usr/lib/perl5/vendor_perl/5.8.8/Bio/SeqIO/embl.pm line 539, line 161.
$
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Tue Jun 5 08:50:06 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Tue, 5 Jun 2007 08:50:06 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706051250.l55Co6fR026017@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #1 from mmokrejs at ribosome.natur.cuni.cz 2007-06-05 08:50 EST -------
Created an attachment (id=663)
--> (http://bugzilla.open-bio.org/attachment.cgi?id=663&action=view)
pGL3R.gb
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From cjfields at dev.open-bio.org Tue Jun 5 11:07:44 2007
From: cjfields at dev.open-bio.org (Christopher John Fields)
Date: Tue, 05 Jun 2007 15:07:44 +0000
Subject: [Bioperl-guts-l] bioperl-live/Bio/Root RootI.pm,1.77,1.78
Message-ID: <200706051507.l55F7i8O018454@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/Bio/Root
In directory dev.open-bio.org:/tmp/cvs-serv18429
Modified Files:
RootI.pm
Log Message:
prettify verbose warnings a little more
Index: RootI.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/Root/RootI.pm,v
retrieving revision 1.77
retrieving revision 1.78
diff -C2 -d -r1.77 -r1.78
*** RootI.pm 25 May 2007 10:10:39 -0000 1.77
--- RootI.pm 5 Jun 2007 15:07:42 -0000 1.78
***************
*** 181,187 ****
} elsif( $verbose == 1 ) {
my $out = "\n-------------------- WARNING ---------------------\n".
! "MSG: ".$string."\n";
! $out .= $self->stack_trace_dump;
!
print STDERR $out;
return;
--- 181,186 ----
} elsif( $verbose == 1 ) {
my $out = "\n-------------------- WARNING ---------------------\n".
! "MSG: $string\n".$self->stack_trace_dump.
! "---------------------------------------------------\n";
print STDERR $out;
return;
From bugzilla-daemon at portal.open-bio.org Tue Jun 5 13:47:30 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Tue, 5 Jun 2007 13:47:30 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706051747.l55HlUxE011164@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
cjfields at uiuc.edu changed:
What |Removed |Added
----------------------------------------------------------------------------
Version|unspecified |main-trunk
------- Comment #2 from cjfields at uiuc.edu 2007-06-05 13:47 EST -------
Confirmed using bioperl-live. There are three bugs here; I could argue the
first two are features and not bugs per se.
(1) The LOCUS line is malformed; there is no locus identifier (name) in the
line. This omission leads to the parser misidentifying the sequence as amino
acid. A warning will be added; however one can't expect the parser to work
with bad input data. This is more a problem with the original program
generating the record (ApE plasmid editor) than with BioPerl.
(2) The sequence file you give has blank annotation lines which shouldn't be
present or should have a '.' instead. Again, this is really a problem with the
program generating the sequence file and not BioPerl. There are several 'Use
of uninitialized value' warnings which are generated but are relatively
harmless. We probably won't fix this except to add a more explicit messages
warning about the issue.
You could fix your local files by modifying the LOCUS line, adding a unique
identifier:
LOCUS unique_ID 6499 bp ds-DNA linear 02-AUG-2006
which fixes the most serious problem.
(3) The qualifier warning is a true bug which I'll try looking into when I can.
I noticed my experimental genbank parser (Bio::SeqIO::gbdriver) in CVS parses
this qualifier w/o problems; you can try that one out if needed.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Tue Jun 5 14:56:58 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Tue, 5 Jun 2007 14:56:58 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706051856.l55Iuw0W015897@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #3 from mmokrejs at ribosome.natur.cuni.cz 2007-06-05 14:56 EST -------
Wayne Davis wrote:
> locus line I'm using is the old standard (some older parsers wanted it
> that way).
> I've updated to write the new standard, if your program isn't flexible
> enough to read the old style locus lines. We'll see if anyone is using
> the older parsers still.
> from the document laying out the new standard:
>
> We encourage software developers to switch to a token-based LOCUS parsing
> approach, rather than a column-specific approach. If this is done, then future
> changes to the LOCUS line that affect only the spacing of its data values will
>
> not require any modifications to software.
>
>
>
>
> I've made the default behavior to put "." in the empty fields. I left
> those fields there because there are other parsers that require them.
> In my new version you can change the default genbank record values by
> adding a line to your preferences file like this:
> empty_genbank_header{LOCUS } {} {DEFINITION } {.}
> {ACCESSION } {.} {VERSION } {.} {SOURCE } {.} { ORGANISM } {.}
>
> or
> empty_genbank_header{LOCUS } {}
>
>
> My access to our web server is temporarily unavailable, but I'll post
> the update as soon as I can.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From cjfields at dev.open-bio.org Tue Jun 5 19:46:14 2007
From: cjfields at dev.open-bio.org (Christopher John Fields)
Date: Tue, 05 Jun 2007 23:46:14 +0000
Subject: [Bioperl-guts-l] bioperl-live/t genbank.t,1.20,1.21
Message-ID: <200706052346.l55NkElT019513@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/t
In directory dev.open-bio.org:/tmp/cvs-serv19478/t
Modified Files:
genbank.t
Log Message:
Partial fix for bug 2305
Index: genbank.t
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/t/genbank.t,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** genbank.t 13 Apr 2007 18:53:56 -0000 1.20
--- genbank.t 5 Jun 2007 23:46:12 -0000 1.21
***************
*** 10,14 ****
}
use Test::More;
! plan tests => 245;
use_ok('Bio::SeqIO');
use_ok('Bio::Root::IO');
--- 10,14 ----
}
use Test::More;
! plan tests => 247;
use_ok('Bio::SeqIO');
use_ok('Bio::Root::IO');
***************
*** 334,338 ****
# write revcomp split location
my $gb = new Bio::SeqIO(-format => 'genbank',
! -verbose => $verbose,
-file => Bio::Root::IO->catfile
(qw(t data revcomp_mrna.gb)));
--- 334,341 ----
# write revcomp split location
my $gb = new Bio::SeqIO(-format => 'genbank',
! # This sequence has an odd LOCUS line which sets off a warning, setting
! # verbose to -1.
! # The newest Ensembl seq lacks this. Maybe update? cjfields 6-5-07
! -verbose => -1,
-file => Bio::Root::IO->catfile
(qw(t data revcomp_mrna.gb)));
***************
*** 345,349 ****
undef $gb;
ok(! -z "tmp_revcomp_mrna.gb", 'revcomp split location');
! # INSERT DIFFING CODE HERE
# bug 1925, continuation of long ORGANISM line ends up in @classification:
--- 348,362 ----
undef $gb;
ok(! -z "tmp_revcomp_mrna.gb", 'revcomp split location');
!
! # check warnings for LOCUS line
! $gb = new Bio::SeqIO(-format => 'genbank',
! -verbose => 2,
! -file => Bio::Root::IO->catfile
! (qw(t data revcomp_mrna.gb)));
! eval {$seq = $gb->next_seq();};
!
! ok($@);
!
! like($@, qr{Missing tokens in the LOCUS line});
# bug 1925, continuation of long ORGANISM line ends up in @classification:
From cjfields at dev.open-bio.org Tue Jun 5 19:46:14 2007
From: cjfields at dev.open-bio.org (Christopher John Fields)
Date: Tue, 05 Jun 2007 23:46:14 +0000
Subject: [Bioperl-guts-l] bioperl-live/Bio/SeqIO genbank.pm,1.163,1.164
Message-ID: <200706052346.l55NkE9C019510@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/Bio/SeqIO
In directory dev.open-bio.org:/tmp/cvs-serv19478/Bio/SeqIO
Modified Files:
genbank.pm
Log Message:
Partial fix for bug 2305
Index: genbank.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/SeqIO/genbank.pm,v
retrieving revision 1.163
retrieving revision 1.164
diff -C2 -d -r1.163 -r1.164
*** genbank.pm 30 Jan 2007 15:17:04 -0000 1.163
--- genbank.pm 5 Jun 2007 23:46:12 -0000 1.164
***************
*** 154,157 ****
--- 154,158 ----
James Wasmuth, james.wasmuth at ed.ac.uk
Brian Osborne, bosborne at alum.mit.edu
+ Chris Fields, cjfields at uiuc dot edu
=head1 APPENDIX
***************
*** 212,217 ****
if( ! defined $self->sequence_factory ) {
$self->sequence_factory(new Bio::Seq::SeqFactory
! (-verbose => $self->verbose(),
! -type => 'Bio::Seq::RichSeq'));
}
}
--- 213,218 ----
if( ! defined $self->sequence_factory ) {
$self->sequence_factory(new Bio::Seq::SeqFactory
! (-verbose => $self->verbose(),
! -type => 'Bio::Seq::RichSeq'));
}
}
***************
*** 255,259 ****
my @tokens = split(' ', $1);
!
# this is important to have the id for display in e.g. FTHelper,
# otherwise you won't know which entry caused an error
--- 256,263 ----
my @tokens = split(' ', $1);
!
! # there should be at least six tokens in the LOCUS line; if not we may be in trouble...
! $self->warn('Missing tokens in the LOCUS line; output may be malformed') if @tokens < 6;
!
# this is important to have the id for display in e.g. FTHelper,
# otherwise you won't know which entry caused an error
***************
*** 269,278 ****
my $circ = shift(@tokens);
if ($circ eq 'circular') {
! $params{'-is_circular'} = 1;
! $params{'-division'} = shift(@tokens);
} else {
! # 'linear' or 'circular' may actually be omitted altogether
! $params{'-division'} =
! (CORE::length($circ) == 3 ) ? $circ : shift(@tokens);
}
} else {
--- 273,282 ----
my $circ = shift(@tokens);
if ($circ eq 'circular') {
! $params{'-is_circular'} = 1;
! $params{'-division'} = shift(@tokens);
} else {
! # 'linear' or 'circular' may actually be omitted altogether
! $params{'-division'} =
! (CORE::length($circ) == 3 ) ? $circ : shift(@tokens);
}
} else {
***************
*** 290,311 ****
if($date =~ s/\s*((\d{1,2})-(\w{3})-(\d{2,4})).*/$1/) {
if( length($date) < 11 ) {
! # improperly formatted date
! # But we'll be nice and fix it for them
! my ($d,$m,$y) = ($2,$3,$4);
! if( length($d) == 1 ) {
! $d = "0$d";
! }
! # guess the century here
! if( length($y) == 2 ) {
! if( $y > 60 ) { # arbitrarily guess that '60' means 1960
! $y = "19$y";
! } else {
! $y = "20$y";
! }
! $self->warn("Date was malformed, guessing the century for $date to be $y\n");
! }
! $params{'-dates'} = [join('-',$d,$m,$y)];
! } else {
! $params{'-dates'} = [$date];
}
}
--- 294,315 ----
if($date =~ s/\s*((\d{1,2})-(\w{3})-(\d{2,4})).*/$1/) {
if( length($date) < 11 ) {
! # improperly formatted date
! # But we'll be nice and fix it for them
! my ($d,$m,$y) = ($2,$3,$4);
! if( length($d) == 1 ) {
! $d = "0$d";
! }
! # guess the century here
! if( length($y) == 2 ) {
! if( $y > 60 ) { # arbitrarily guess that '60' means 1960
! $y = "19$y";
! } else {
! $y = "20$y";
! }
! $self->warn("Date was malformed, guessing the century for $date to be $y\n");
! }
! $params{'-dates'} = [join('-',$d,$m,$y)];
! } else {
! $params{'-dates'} = [$date];
}
}
***************
*** 354,358 ****
}
# Version number
! elsif( /^VERSION\s+(.+)$/ ) {
my ($acc,$gi) = split(' ',$1);
if($acc =~ /^\w+\.(\d+)/) {
--- 358,362 ----
}
# Version number
! elsif( /^VERSION\s+(\S.+)$/ ) {
my ($acc,$gi) = split(' ',$1);
if($acc =~ /^\w+\.(\d+)/) {
***************
*** 365,369 ****
}
# Keywords
! elsif( /^KEYWORDS\s+(.*)/ ) {
my @kw = split(/\s*\;\s*/,$1);
while( defined($_ = $self->_readline) ) {
--- 369,373 ----
}
# Keywords
! elsif( /^KEYWORDS\s+(\S.*)/ ) {
my @kw = split(/\s*\;\s*/,$1);
while( defined($_ = $self->_readline) ) {
***************
*** 379,383 ****
}
# Organism name and phylogenetic information
! elsif (/^SOURCE/) {
if($builder->want_slot('species')) {
$species = $self->_read_GenBank_Species(\$buffer);
--- 383,387 ----
}
# Organism name and phylogenetic information
! elsif (/^SOURCE\s+\S/) {
if($builder->want_slot('species')) {
$species = $self->_read_GenBank_Species(\$buffer);
***************
*** 391,395 ****
}
# References
! elsif (/^REFERENCE/) {
if($annotation) {
my @refs = $self->_read_GenBank_References(\$buffer);
--- 395,399 ----
}
# References
! elsif (/^REFERENCE\s+\S/) {
if($annotation) {
my @refs = $self->_read_GenBank_References(\$buffer);
***************
*** 405,409 ****
}
# Comments
! elsif (/^COMMENT\s+(.*)/) {
if($annotation) {
my $comment = $1;
--- 409,413 ----
}
# Comments
! elsif (/^COMMENT\s+(\S.*)/) {
if($annotation) {
my $comment = $1;
***************
*** 426,430 ****
}
# Corresponding Genbank nucleotide id, Genpept only
! elsif( /^DBSOURCE\s+(.+)/ ) {
if ($annotation) {
my $dbsource = $1;
--- 430,434 ----
}
# Corresponding Genbank nucleotide id, Genpept only
! elsif( /^DBSOURCE\s+(\S.+)/ ) {
if ($annotation) {
my $dbsource = $1;
***************
*** 1059,1066 ****
}
}
-
}
-
=head2 _read_GenBank_References
--- 1063,1068 ----
***************
*** 1280,1291 ****
# escaped '>', so a simple-minded approach suffices)
$line =~ s{<[^>]+>}{}g;
! if ($line =~ m{^(?:\s{0,2})(\w+)\s+(.+)$}ox) {
! ($tag, $data) = ($1, $2);
} else {
($data = $line) =~ s{^\s+}{};
chomp $data;
$tag = 'CLASSIFICATION' if ($tag ne 'CLASSIFICATION' && $tag eq 'ORGANISM' && $line =~ m{[;\.]+});
}
- last if ($tag && !exists $source{$tag});
(exists $ann->{$tag}) ? ($ann->{$tag} .= ' '.$data) : ($ann->{$tag} .= $data);
$line = undef;
--- 1282,1294 ----
# escaped '>', so a simple-minded approach suffices)
$line =~ s{<[^>]+>}{}g;
! if ($line =~ m{^(?:\s{0,2})(\w+)\s+(.+)?$}ox) {
! ($tag, $data) = ($1, $2 || '');
! last if ($tag && !exists $source{$tag});
} else {
+ return unless $tag;
($data = $line) =~ s{^\s+}{};
chomp $data;
$tag = 'CLASSIFICATION' if ($tag ne 'CLASSIFICATION' && $tag eq 'ORGANISM' && $line =~ m{[;\.]+});
}
(exists $ann->{$tag}) ? ($ann->{$tag} .= ' '.$data) : ($ann->{$tag} .= $data);
$line = undef;
***************
*** 1294,1298 ****
($sl, $class_lines, $sci_name) = ($ann->{SOURCE}, $ann->{CLASSIFICATION}, $ann->{ORGANISM});
! $$buffer = $line;
# parse out organelle, common name, abbreviated name if present;
--- 1297,1303 ----
($sl, $class_lines, $sci_name) = ($ann->{SOURCE}, $ann->{CLASSIFICATION}, $ann->{ORGANISM});
! $$buffer = $line;
!
! $sci_name || return;
# parse out organelle, common name, abbreviated name if present;
***************
*** 1310,1315 ****
}
- $sci_name || return;
-
# Convert data in classification lines into classification array.
# only split on ';' or '.' so that classification that is 2 or more words will
--- 1315,1318 ----
From bugzilla-daemon at portal.open-bio.org Tue Jun 5 19:48:48 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Tue, 5 Jun 2007 19:48:48 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706052348.l55NmmEg005705@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #4 from cjfields at uiuc.edu 2007-06-05 19:48 EST -------
I committed a partial fix and some warnings. I'll have a look at the
seqfeature problem to see what needs to be done.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Wed Jun 6 18:24:55 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Wed, 6 Jun 2007 18:24:55 -0400
Subject: [Bioperl-guts-l] [Bug 2310] New: nonstandard method docs in
Bio::Search::Result::BlastResult
Message-ID:
http://bugzilla.open-bio.org/show_bug.cgi?id=2310
Summary: nonstandard method docs in
Bio::Search::Result::BlastResult
Product: BioPerl
Version: main-trunk
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Documentation
AssignedTo: bioperl-guts-l at bioperl.org
ReportedBy: online at davemessina.com
Several methods in Bio::Search::Result::BlastResult are listed on the
Deobfuscator as undocumented. While the Deobfuscator should really be more
tolerant, it's missing them because those methods do not follow the BioPerl
documentation guidelines.
Reformat POD for hits(), next_hit(), num_hits(), number_of_iterations(), and
round() to have Title, Usage, Returns, etc...
Dave
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 09:57:06 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 09:57:06 -0400
Subject: [Bioperl-guts-l] [Bug 2312] New: './Build test' failures on linux
with bioperl-live from cvs now()
Message-ID:
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
Summary: './Build test' failures on linux with bioperl-live from
cvs now()
Product: BioPerl
Version: main-trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Unclassified
AssignedTo: bioperl-guts-l at bioperl.org
ReportedBy: mmokrejs at ribosome.natur.cuni.cz
I did perl Build.PL and asked to install most of the optional stuff, except
the AceDB viewer and the GFF/mysql database stuff. Anyway, something got
installed and the testsuite should at least skip those test which have no
prerequisities installed. If the summary error message below would point me
where to look for the stacktraces from perl, I could post them. I am overhauled
with a number of other tasks, so I cannot spend much time on reading docs,
sorry. Just wanted to test current cvs and Genbank parser. ;-)
t/BioDBGFF...................ok 1/278# Looks like you planned 278 tests but
only ran 104.
t/BioDBGFF...................dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 105-278
Failed 174/278 tests, 37.41% okay (less 1 skipped test: 103 okay,
37.05%)
t/BioDBSeqFeature............ok
t/BioDBSeqFeature_BDB........ok
t/BioFetch_DB................skipped
all skipped: Must set BIOPERLDEBUG=1 for network tests
t/BioGraphics................NOK 3/38
# Failed test in t/BioGraphics.t at line 170.
t/BioGraphics................NOK 4/38
# Failed test in t/BioGraphics.t at line 170.
t/BioGraphics................NOK 5/38
# Failed test in t/BioGraphics.t at line 170.
t/BioGraphics................ok 6/38# Looks like you failed 3 tests of 38.
t/BioGraphics................dubious
Test returned status 3 (wstat 768, 0x300)
DIED. FAILED tests 3-5
Failed 3/38 tests, 92.11% okay
t/BlastIndex.................ok
t/RemoteBlast................ok 18/21
-------------------- WARNING ---------------------
MSG: Server failed to return any data
---------------------------------------------------
# Failed test in t/RemoteBlast.t at line 164.
t/RemoteBlast................NOK 19/21# Looks like you planned 21 tests but
only ran 19.
# Looks like you failed 1 test of 19 run.
t/RemoteBlast................dubious
Test returned status 1 (wstat 256, 0x100)
DIED. FAILED tests 19-21
Failed 3/21 tests, 85.71% okay (less 4 skipped tests: 14 okay, 66.67%)
t/Tree.......................FAILED tests 30-39
Failed 10/29 tests, 65.52% okay
t/embl.......................ok
t/entrezgene.................ok 545/1423Pseudo-hashes are deprecated at
/home/mmokrejs/proj/bioperl/bioperl-live/blib/lib/Bio/SeqIO/entrezgene.pm line
491.
t/entrezgene.................ok 981/1423Pseudo-hashes are deprecated at
/home/mmokrejs/proj/bioperl/bioperl-live/blib/lib/Bio/SeqIO/entrezgene.pm line
491.
Pseudo-hashes are deprecated at
/home/mmokrejs/proj/bioperl/bioperl-live/blib/lib/Bio/SeqIO/entrezgene.pm line
491.
t/entrezgene.................ok 1143/1423Pseudo-hashes are deprecated at
/home/mmokrejs/proj/bioperl/bioperl-live/blib/lib/Bio/SeqIO/entrezgene.pm line
491.
t/ztr........................ok
Failed Test Stat Wstat Total Fail List of Failed
-------------------------------------------------------------------------------
t/BioDBGFF.t 255 65280 278 348 105-278
t/BioGraphics.t 3 768 38 3 3-5
t/RemoteBlast.t 1 256 21 5 19-21
t/Tree.t 29 10 30-39
19 tests and 134 subtests skipped.
Failed 4/244 test scripts. 170/14656 subtests failed.
Files=244, Tests=14656, 256 wallclock secs (177.32 cusr + 7.50 csys = 184.82
CPU)
Failed 4/244 test programs. 170/14656 subtests failed.
$ perl -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
Platform:
osname=linux, osvers=2.6.18.1, archname=i686-linux-thread-multi
uname='linux vrapenec 2.6.18.1 #5 tue oct 24 13:01:30 cest 2006 i686 mobile
intel(r) pentium(r) 4 - m cpu 1.80ghz genuineintel gnulinux '
config_args='-des -Darchname=i686-linux-thread -Dcccdlflags=-fPIC
-Dccdlflags=-rdynamic -Dcc=i686-pc-linux-gnu-gcc -Dprefix=/usr
-Dvendorprefix=/usr -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O2
-march=pentium4 -mmmx -msse
sse2 -fomit-frame-pointer -pipe -Duselargefiles -Dd_semctl_semun
-Dscriptdir=/usr/bin -Dman1dir=/usr/share/man/man1
-Dman3dir=/usr/share/man/man3 -Dinstallman1dir=/usr/share/man/man1
-Dinstallman3dir=/usr/share/man/man3 -Dman1ex
1 -Dman3ext=3pm -Dinc_version_list=5.8.0 5.8.0/i686-linux-thread-multi 5.8.2
5.8.2/i686-linux-thread-multi 5.8.4 5.8.4/i686-linux-thread-multi 5.8.5
5.8.5/i686-linux-thread-multi 5.8.6 5.8.6/i686-linux-thread-multi 5.8.7 5.8.7/i
6-linux-thread-multi -Dcf_by=Gentoo -Ud_csh -Dusenm -Dusethreads -Di_ndbm
-Di_gdbm -Di_db'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='i686-pc-linux-gnu-gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE
-DTHREADS_HAVE_PIDS -fno-strict-aliasing -pipe -Wdeclaration-after-statement
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer
-pipe',
cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-fno-strict-aliasing -pipe -Wdeclaration-after-statement'
ccversion='', gccversion='4.1.1 (Gentoo 4.1.1-r1)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='i686-pc-linux-gnu-gcc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.5.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.5'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP THREADS_HAVE_PIDS USE_ITHREADS
USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
Built under linux
Compiled at Oct 27 2006 16:23:07
@INC:
/etc/perl
/usr/lib/perl5/vendor_perl/5.8.8/i686-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8
/usr/lib/perl5/vendor_perl
/usr/lib/perl5/site_perl/5.8.8/i686-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl
/usr/lib/perl5/5.8.8/i686-linux-thread-multi
/usr/lib/perl5/5.8.8
/usr/local/lib/site_perl
.
$
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:08:45 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:08:45 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071408.l57E8jds022720@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
------- Comment #1 from bix at sendu.me.uk 2007-06-07 10:08 EST -------
For each test that failed (t/BioDBGFF.t, t/BioGraphics.t, t/RemoteBlast.t,
t/Tree.t), you can get more details by doing:
./Build test --test_files test_file --verbose
(where you replace 'test_file' with eg. t/BioDBGFF.t)
If you don't plan on using the things being tested in those scripts, the
failures don't matter (to you) and you can go ahead and install.
./Build install
If you want to help us figure out why they're failing, post the output of
running ./Build test as described above.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:14:31 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:14:31 -0400
Subject: [Bioperl-guts-l] [Bug 2313] New: './Build test' stalls from current
cvs bioperl-run
Message-ID:
http://bugzilla.open-bio.org/show_bug.cgi?id=2313
Summary: './Build test' stalls from current cvs bioperl-run
Product: BioPerl
Version: main-trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: bioperl-run
AssignedTo: bioperl-guts-l at bioperl.org
ReportedBy: mmokrejs at ribosome.natur.cuni.cz
t/Amap........................ok
8/18 skipped: various reasons
t/AnalysisFactory_soap........ok
t/Analysis_soap...............ok
t/Blat........................ok 1/11blat program not found. Skipping tests 2
to 11.
t/Blat........................ok
10/11 skipped: various reasons
t/Clustalw....................ok
t/Coil........................Need to define env variable COILSDIR to run test
at t/Coil.t line 27.
t/Coil........................ok
4/4 skipped: various reasons
t/Consense....................ok
t/DBA.........................ok 1/15Find start end points: [0,17][209,222]
Score 109962
Recovering alignment: Alignment recoveredit read offffls done 78%
Find start end points: [0,0][209,195] Score 99400
Recovering alignment: Alignment recovered read offffffls done 86%
t/DBA.........................ok 7/15[0,17][209,222] Score 109962
Recovering alignment: Alignment recoveredit read offffls done 78%
t/DBA.........................ok
t/DrawGram....................ok
t/DrawTree....................ok
t/EMBOSS......................ok
t/Eponine.....................ok
5/5 skipped: various reasons
t/Exonerate...................ok
87/88 skipped: various reasons
t/FootPrinter.................FootPrinter program not found. Skipping tests 1
to 22.
t/FootPrinter.................ok
22/22 skipped: various reasons
t/Genemark.hmm.prokaryotic....ok 1/99# Looks like you planned 99 tests but only
ran 98.
t/Genemark.hmm.prokaryotic....dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED test 99
Failed 1/99 tests, 98.99% okay (less 95 skipped tests: 3 okay, 3.03%)
t/Genewise....................ok
t/Genscan.....................Need to define env variable GENSCANDIR to run
test at t/Genscan.t line 28.
t/Genscan.....................ok
4/4 skipped: various reasons
t/Glimmer2....................ok 1/217# Looks like you planned 217 tests but
only ran 203.
t/Glimmer2....................dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 204-217
Failed 14/217 tests, 93.55% okay (less 199 skipped tests: 4 okay,
1.84%)
t/Glimmer3....................ok 1/111# Looks like you planned 111 tests but
only ran 110.
t/Glimmer3....................dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED test 111
Failed 1/111 tests, 99.10% okay (less 106 skipped tests: 4 okay, 3.60%)
t/Gumby.......................ok
111/124 skipped: various reasons
t/Hmmer.......................ok
t/Hyphy.......................Subroutine no_param_checks redefined at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/Phylo/Hyphy/Base.pm
line 474.
"my" variable $rc masks earlier declaration in same scope at t/Hyphy.t line 80.
"my" variable $results masks earlier declaration in same scope at t/Hyphy.t
line 80.
"my" variable $rc masks earlier declaration in same scope at t/Hyphy.t line 86.
"my" variable $results masks earlier declaration in same scope at t/Hyphy.t
line 86.
"my" variable $rc masks earlier declaration in same scope at t/Hyphy.t line 92.
"my" variable $results masks earlier declaration in same scope at t/Hyphy.t
line 92.
------------- EXCEPTION: Bio::Root::Exception -------------
MSG: unable to find or run executable for 'HYPHY'
STACK: Error::throw
STACK: Bio::Root::Root::throw
/usr/lib/perl5/site_perl/5.8.8/Bio/Root/Root.pm:359
STACK: Bio::Tools::Run::Phylo::Hyphy::SLAC::run
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/Phylo/Hyphy/SLAC.pm:199
STACK: t/Hyphy.t:74
-----------------------------------------------------------
t/Hyphy.......................dubious
Test returned status 2 (wstat 512, 0x200)
after all the subtests completed successfully
t/Kalign......................ok 1/6amap program not found. Skipping tests 2 to
6.
t/Kalign......................ok
5/6 skipped: various reasons
t/LVB.........................ok 1/20LVB program not found. Skipping tests 3 to
20.
t/LVB.........................ok
18/20 skipped: various reasons
t/Lagan.......................ok 1/7
-------------------- WARNING ---------------------
MSG: Environment variable LAGAN_DIR must be set, even if the lagan executables
are in your path
---------------------------------------------------
lagan program not found. Skipping tests 3 to 7.
t/Lagan.......................ok
5/7 skipped: various reasons
t/MAFFT.......................ok 1/15mafft program not found. Skipping tests 3
to 15.
t/MAFFT.......................ok
13/15 skipped: various reasons
t/Mdust.......................ok 1/2Mdust not installed Skipping tests 2 to 2.
t/Mdust.......................ok
1/2 skipped: various reasons
t/Molphy......................Molphy package not installed. Skipping tests 1 to
7.
t/Molphy......................ok
7/7 skipped: various reasons
t/Muscle......................ok 1/12muscle program not found. Skipping tests 3
to 12.
t/Muscle......................ok
10/12 skipped: various reasons
t/Neighbor....................FAILED tests 16-17
Failed 2/15 tests, 86.67% okay
t/Njtree......................
-------------------- WARNING ---------------------
MSG: 11 unmapped ids between the aln and the tree
CAEELXX,DROME,CAEBR,HUMAN,CANFA,MOUSE,ANOGA,CAEREXX,BRARE,SCHMAXX,DROPS
---------------------------------------------------
Use of uninitialized value in concatenation (.) or string at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/Phylo/Njtree/Best.pm
line 272, line 1.
------------- EXCEPTION: Bio::Root::Exception -------------
MSG: unable to find or run executable for 'njtree'
STACK: Error::throw
STACK: Bio::Root::Root::throw
/usr/lib/perl5/site_perl/5.8.8/Bio/Root/Root.pm:359
STACK: Bio::Tools::Run::Phylo::Njtree::Best::run
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/Phylo/Njtree/Best.pm:284
STACK: t/Njtree.t:76
-----------------------------------------------------------
t/Njtree......................dubious
Test returned status 2 (wstat 512, 0x200)
after all the subtests completed successfully
t/PAML........................ok 1/18PAML not is installed. skipping tests 2 to
18
t/PAML........................ok
17/18 skipped: various reasons
t/PhastCons...................ok
166/181 skipped: various reasons
t/Phrap.......................ok 1/5Phrap program not found. Skipping tests 4
to 5.
t/Phrap.......................ok
2/5 skipped: various reasons
t/Pise........................Subroutine stdout redefined at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJob.pm line
609.
Subroutine stderr redefined at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJob.pm line
644.
t/Pise........................ok 1/11Use of uninitialized value in hash element
at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 181.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 181.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 181.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 181.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 181.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 197.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 197.
Use of uninitialized value in hash element at
/home/mmokrejs/proj/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/PiseJobParser.pm
line 197.
and now the testing does not continue, system is idle and the application is
maybe waiting for some input.
root 10680 5769 0 16:07 pts/1 00:00:01 /usr/bin/perl5.8.8 ./Build test
root 10857 10680 0 16:08 pts/1 00:00:00 /usr/bin/perl5.8.8 -w t/Pise.t
I would also suggest to cleanup a bit the output of the testsuite, and fix
the programming errors. ;)
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:19:35 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:19:35 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706071419.l57EJZwQ023437@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #5 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 10:19 EST -------
Confirming the broken GenBank file produced by previous version of ApE can be
parsed with current bioperl-live. I do not understand why it claims it is a
protein sequence, though. and, maybe the first MSG could spit a sample LOCUS
line then and the current/broken line, so one could immediately see which
spaces are missing.
$ bp_seqconvert.pl --from genbank --to embl < /mnt/smartmedia/pRL.gb
-------------------- WARNING ---------------------
MSG: Missing tokens in the LOCUS line; output may be malformed
---------------------------------------------------
-------------------- WARNING ---------------------
MSG: Protein sequence found; EMBL is a nucleotide format.
---------------------------------------------------
ID unknown; SV 1; linear; AA; STD; UNC; 5428 BP.
XX
AC unknown;
XX
DT 31-OCT-2006
XX
XX
XX
CC ApEinfo:methylated:1
XX
FH Key Location/Qualifiers
FH
FT misc_feature 589..1449
FT /ApEinfo_fwdcolor="#00ff6c"
FT /ApEinfo_label="beta-lactamase"
FT /ApEinfo_revcolor="#00ff6c"
FT misc_feature 2656..3591
FT /ApEinfo_fwdcolor="#00ff00"
FT /ApEinfo_label="RLuc"
FT /ApEinfo_revcolor="green"
XX
SQ Sequence 5428 BP; 1534 A; 1174 C; 1312 G; 1408 T; 0 other;
aaattgtaaa cgtttaatat tttgttaaaa ttcgcgttaa atttttgtta aatcagctca
60
ttttttaacc aataggccga aatcggcaaa atcccttata aatcaaaaga atagaccgag
120
atagggttga gtgttgttcc agtttggaac aagagtccac tattaaagaa cgtggactcc
180
aacgtcaaag ggcgaaaaac cgtctatcag ggcgatggcc cactacgtga accatcaccc
240
taatcaagtt ttttggggtc gaggtgccgt aaagcactaa atcggaaccc taaagggatg
300
ccccgattta gagcttgacg gggaaagccg gcgaacgtgg cgagaaagga agggaagaaa
360
gcgaaaggag cgggcgctag ggcgctggca agtgtagcgg tcacgctgcg cgtaaccacc
420
acacccgccg cgcttaatgc gccgctacag ggcgcgtcag gtggcacttt tcggggaaat
480
gtgcgcggaa cccctatttg tttatttttc taaatacatt caaatatgta tccgctcatg
540
agacaataac cctgataaat gcttcaataa tattgaaaaa ggaagagtat gagtattcaa
600
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:21:44 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:21:44 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706071421.l57ELi5B023539@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #6 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 10:21 EST -------
After the LOCUS line was fixed in current development version of ApE (while
still
DESCRIPTION/ACCESSION/VERSION contain no data == not even the `.') the file can
be parsed by bioperl-live from cvs:
$ bp_seqconvert.pl --from genbank --to embl < /mnt/smartmedia/pRL.gb-new
ID unknown; SV 1; linear; unassigned DNA; STD; UNC; 5428 BP.
XX
AC unknown;
XX
XX
XX
CC ApEinfo:methylated:1
XX
FH Key Location/Qualifiers
FH
FT misc_feature 589..1449
FT /ApEinfo_fwdcolor="#00ff6c"
FT /ApEinfo_revcolor="#00ff6c"
FT /label=beta-lactamase
FT misc_feature 2656..3591
FT /ApEinfo_fwdcolor="#00ff00"
FT /ApEinfo_revcolor="green"
FT /label=RLuc
XX
SQ Sequence 5428 BP; 1534 A; 1174 C; 1312 G; 1408 T; 0 other;
aaattgtaaa cgtttaatat tttgttaaaa ttcgcgttaa atttttgtta aatcagctca
60
ttttttaacc aataggccga aatcggcaaa atcccttata aatcaaaaga atagaccgag
120
atagggttga gtgttgttcc agtttggaac aagagtccac tattaaagaa cgtggactcc
180
aacgtcaaag ggcgaaaaac cgtctatcag ggcgatggcc cactacgtga accatcaccc
240
taatcaagtt ttttggggtc gaggtgccgt aaagcactaa atcggaaccc taaagggatg
300
ccccgattta gagcttgacg gggaaagccg gcgaacgtgg cgagaaagga agggaagaaa
360
gcgaaaggag cgggcgctag ggcgctggca agtgtagcgg tcacgctgcg cgtaaccacc
420
acacccgccg cgcttaatgc gccgctacag ggcgcgtcag gtggcacttt tcggggaaat
480
gtgcgcggaa cccctatttg tttatttttc taaatacatt caaatatgta tccgctcatg
540
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:22:45 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:22:45 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706071422.l57EMj7h023648@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #7 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 10:22 EST -------
Created an attachment (id=667)
--> (http://bugzilla.open-bio.org/attachment.cgi?id=667&action=view)
pRL.gb-new
Still broken file format, but can be parsed well, thanks!
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:35:03 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:35:03 -0400
Subject: [Bioperl-guts-l] [Bug 2305] Use of uninitialized value in pattern
match (m//) at
/usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO/genbank.pm line 352,
line 4
In-Reply-To:
Message-ID: <200706071435.l57EZ3Wf024335@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2305
------- Comment #8 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 10:35 EST -------
> (1) The LOCUS line is malformed; there is no locus identifier (name) in the
> line. This omission leads to the parser misidentifying the sequence as amino
> acid. A warning will be added; however one can't expect the parser to work
> with bad input data. This is more a problem with the original program
> generating the record (ApE plasmid editor) than with BioPerl.
So that's why it claims even now it is a protein sequence? It should rather die
than to continue then.
> (2) The sequence file you give has blank annotation lines which shouldn't be
> present or should have a '.' instead. Again, this is really a problem with
> the
> program generating the sequence file and not BioPerl. There are several 'Use
> of uninitialized value' warnings which are generated but are relatively
> harmless. We probably won't fix this except to add a more explicit messages
> warning about the issue.
But bioperl could cope with the missing dots and just continue and insert them
itself, right? Probably that's what happens already in the cvs version. Anyway
if you convert from EMBL back to GenBank, you have have o add some character
internally for some GenBank-specific variables (don't know if there really are
any, though), right? ;-)
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:50:07 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:50:07 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071450.l57Eo7kD025375@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
cjfields at uiuc.edu changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |trivial
------- Comment #2 from cjfields at uiuc.edu 2007-06-07 10:50 EST -------
Just a quick rant (and the reason I'm demoting this). Test failure from CVS
code aren't unusual for any development project. We strive to have all tests
pass but commits over time and changes on remote servers can lead to these
popping up now and again. Follow Sendu's recommendations whenever you
encounter problems with tests in CVS code and realize that you're using code
that's on the bleeding edge and may change prior to an official (versioned)
release, which we require pass tests on all available OS's.
BioDBGFF tests are optional and require MySQL (with proper permission); don't
know what's going on there. I'll try looking at the RemoteBlast code to see
what's being borked uing a clean checkout but I can't get to it today.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:58:56 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:58:56 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071458.l57Ewur5025988@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
------- Comment #3 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 10:58 EST -------
$ ./Build test --test_files t/BioDBGFF.t --verbose
...
t/BioDBGFF....1..278
ok 1 - use Bio::DB::GFF;
ok 2 - use Bio::SeqIO;
ok 3
ok 4
ok 5
ok 6
ok 7
...
ok 99
ok 100
ok 101
ok 102
ok 103
ok 104 # skip fetch_feature_by_gid() not implemented by this adaptor
# Looks like you planned 278 tests but only ran 104.
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 105-278
Failed 174/278 tests, 37.41% okay (less 1 skipped test: 103 okay,
37.05%)
Failed Test Stat Wstat Total Fail List of Failed
-------------------------------------------------------------------------------
t/BioDBGFF.t 255 65280 278 348 105-278
1 subtest skipped.
Failed 1/1 test scripts. 174/278 subtests failed.
Files=1, Tests=278, 1 wallclock secs ( 0.85 cusr + 0.08 csys = 0.93 CPU)
Failed 1/1 test programs. 174/278 subtests failed.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 10:59:56 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 10:59:56 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071459.l57ExubQ026073@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
------- Comment #4 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 10:59 EST -------
$ ./Build test --test_files t/BioGraphics.t --verbose
...
ok 1 - require Bio::Graphics::FeatureFile;
ok 2 - require Bio::Graphics;
not ok 3
# Failed test in t/BioGraphics.t at line 170.
not ok 4
# Failed test in t/BioGraphics.t at line 170.
not ok 5
# Failed test in t/BioGraphics.t at line 170.
ok 6
ok 7
ok 8
ok 9
...
# Looks like you failed 3 tests of 38.
dubious
Test returned status 3 (wstat 768, 0x300)
DIED. FAILED tests 3-5
Failed 3/38 tests, 92.11% okay
Failed Test Stat Wstat Total Fail List of Failed
-------------------------------------------------------------------------------
t/BioGraphics.t 3 768 38 3 3-5
Failed 1/1 test scripts. 3/38 subtests failed.
Files=1, Tests=38, 2 wallclock secs ( 1.57 cusr + 0.04 csys = 1.61 CPU)
Failed 1/1 test programs. 3/38 subtests failed.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 11:01:24 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 11:01:24 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071501.l57F1OZu026256@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
------- Comment #5 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 11:01 EST -------
$ ./Build test --test_files t/RemoteBlast.t --verbose
...
ok 1 - require Bio::Tools::Run::RemoteBlast;
ok 2 - require Bio::SeqIO;
ok 3 - require Bio::AlignIO;
ok 4 - require Bio::Seq;
ok 5 - require Bio::Root::IO;
ok 6 - use Env;
ok 7
ok 8 - Text BLAST
ok 9 # skip Text BLAST to avoid timeout
ok 10 # skip Text BLAST to avoid timeout
ok 11 # skip Text BLAST to avoid timeout
ok 12 # skip Text BLAST to avoid timeout
ok 13 - Tabular BLAST
ok 14
ok 15
ok 16
ok 17 - XML BLAST
ok 18
-------------------- WARNING ---------------------
MSG: Server failed to return any data
---------------------------------------------------
# Failed test in t/RemoteBlast.t at line 164.
not ok 19
# Looks like you planned 21 tests but only ran 19.
# Looks like you failed 1 test of 19 run.
dubious
Test returned status 1 (wstat 256, 0x100)
DIED. FAILED tests 19-21
Failed 3/21 tests, 85.71% okay (less 4 skipped tests: 14 okay, 66.67%)
Failed Test Stat Wstat Total Fail List of Failed
-------------------------------------------------------------------------------
t/RemoteBlast.t 1 256 21 5 19-21
4 subtests skipped.
Failed 1/1 test scripts. 3/21 subtests failed.
Files=1, Tests=21, 43 wallclock secs ( 0.78 cusr + 0.07 csys = 0.85 CPU)
Failed 1/1 test programs. 3/21 subtests failed.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 11:03:05 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 11:03:05 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071503.l57F35QF026381@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
------- Comment #6 from mmokrejs at ribosome.natur.cuni.cz 2007-06-07 11:03 EST -------
Please add the help message as in comment #1 to the summary output of testsuite
if there were any errors.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From sendu at dev.open-bio.org Thu Jun 7 11:13:57 2007
From: sendu at dev.open-bio.org (Senduran Balasubramaniam)
Date: Thu, 07 Jun 2007 15:13:57 +0000
Subject: [Bioperl-guts-l] bioperl-live/t Tree.t,1.14,1.15
Message-ID: <200706071513.l57FDvwK023334@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/t
In directory dev.open-bio.org:/tmp/cvs-serv23309/t
Modified Files:
Tree.t
Log Message:
corrected number of tests
Index: Tree.t
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/t/Tree.t,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** Tree.t 12 May 2007 22:58:25 -0000 1.14
--- Tree.t 7 Jun 2007 15:13:54 -0000 1.15
***************
*** 18,24 ****
}
use Test;
! use vars qw($TESTCOUNT);
! $TESTCOUNT = 29;
! plan tests => $TESTCOUNT;
}
--- 18,22 ----
}
use Test;
! plan tests => 39;
}
From sendu at dev.open-bio.org Thu Jun 7 11:48:07 2007
From: sendu at dev.open-bio.org (Senduran Balasubramaniam)
Date: Thu, 07 Jun 2007 15:48:07 +0000
Subject: [Bioperl-guts-l] bioperl-live/t RemoteBlast.t,1.19,1.20
Message-ID: <200706071548.l57Fm7W8024210@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/t
In directory dev.open-bio.org:/tmp/cvs-serv24185/t
Modified Files:
RemoteBlast.t
Log Message:
corrected skip behaviour; still need a solution for when server fails to return any data
Index: RemoteBlast.t
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/t/RemoteBlast.t,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** RemoteBlast.t 30 Mar 2007 21:17:43 -0000 1.19
--- RemoteBlast.t 7 Jun 2007 15:48:05 -0000 1.20
***************
*** 3,10 ****
use strict;
! use vars qw($NUMTESTS $DEBUG);
! $DEBUG = $ENV{'BIOPERLDEBUG'} || 0;
! my $error;
! BEGIN {
eval { require Test::More; };
if( $@ ) {
--- 3,11 ----
use strict;
! our $DEBUG;
!
! BEGIN {
! $DEBUG = $ENV{'BIOPERLDEBUG'} || 0;
!
eval { require Test::More; };
if( $@ ) {
***************
*** 12,156 ****
}
use Test::More;
! $NUMTESTS = 21;
! plan tests => $NUMTESTS;
!
}
- my $actually_submit = $DEBUG > 0;
! require_ok('Bio::Tools::Run::RemoteBlast');
! require_ok('Bio::SeqIO');
! require_ok('Bio::AlignIO');
! require_ok('Bio::Seq');
! require_ok('Bio::Root::IO');
! use_ok('Env');
! SKIP: {
! my $prog = 'blastp';
! my $db = 'swissprot';
! my $e_val= '1e-10';
! my $v = $DEBUG > 1;
! my $remote_blast = Bio::Tools::Run::RemoteBlast->new('-verbose' => $v,
! '-prog' => $prog,
! '-data' => $db,
! '-expect' => $e_val,
! );
! $remote_blast->submit_parameter('ENTREZ_QUERY',
! 'Escherichia coli[ORGN]');
! my $inputfilename = Bio::Root::IO->catfile("t","data","ecolitst.fa");
! ok( -e $inputfilename);
! eval { require IO::String;
! require LWP;
! require LWP::UserAgent;
! };
! if( $@ ) {
! skip("IO::String or LWP::UserAgent not installed. This means the Bio::Tools::Run::RemoteBlast is not usable. Skipping tests", 14);
! }
!
! ok(1, 'Text BLAST');
!
! SKIP: {
! skip( 'Text BLAST to avoid timeout', 4 ) if $actually_submit == 0;
! my $r = $remote_blast->submit_blast($inputfilename);
! ok($r);
! print STDERR "waiting..." if( $v > 0 );
! while ( my @rids = $remote_blast->each_rid ) {
! foreach my $rid ( @rids ) {
! my $rc = $remote_blast->retrieve_blast($rid);
! if( !ref($rc) ) {
! if( $rc < 0 ) {
! $remote_blast->remove_rid($rid);
! ok(0);
! }
! print STDERR "." if ( $v > 0 );
! sleep 5;
! } else {
! ok(1);
! $remote_blast->remove_rid($rid);
! my $result = $rc->next_result;
! like($result->database_name, qr/swissprot/i);
! my $count = 0;
! while( my $hit = $result->next_hit ) {
! $count++;
! next unless ( $v > 0);
! print "sbjct name is ", $hit->name, "\n";
! while( my $hsp = $hit->next_hsp ) {
! print "score is ", $hsp->score, "\n";
! }
! }
! is($count, 3);
! }
}
}
}
!
! # test blasttable
!
! ok(1, 'Tabular BLAST');
!
! my $remote_blast2 = Bio::Tools::Run::RemoteBlast->new
! ('-verbose' => $v,
! '-prog' => $prog,
! '-data' => $db,
! '-readmethod' => 'blasttable',
! '-expect' => $e_val,
! );
! $remote_blast2->submit_parameter('ENTREZ_QUERY', 'Escherichia coli[ORGN]');
! $remote_blast2->retrieve_parameter('ALIGNMENT_VIEW', 'Tabular');
! $inputfilename = Bio::Root::IO->catfile("t","data","ecolitst.fa");
! my $r = $remote_blast2->submit_blast($inputfilename);
! ok($r);
! print STDERR "waiting..." if( $v > 0 );
! while ( my @rids = $remote_blast2->each_rid ) {
! foreach my $rid ( @rids ) {
! my $rc = $remote_blast2->retrieve_blast($rid);
! if( !ref($rc) ) {
! if( $rc < 0 ) {
! $remote_blast2->remove_rid($rid);
! ok(0);
! }
! print STDERR "." if ( $v > 0 );
! sleep 10;
! } else {
! ok(1);
$remote_blast2->remove_rid($rid);
! my $result = $rc->next_result;
! my $count = 0;
! while( my $hit = $result->next_hit ) {
! $count++;
! next unless ( $v > 0);
! print "sbjct name is ", $hit->name, "\n";
! while( my $hsp = $hit->next_hsp ) {
! print "score is ", $hsp->score, "\n";
! }
! }
! is($count, 3);
}
}
}
! my $remote_blastxml = Bio::Tools::Run::RemoteBlast->new
! ('-prog' => $prog,
'-data' => $db,
'-readmethod' => 'xml',
'-expect' => $e_val,
! );
$remote_blast->submit_parameter('ENTREZ_QUERY',
! 'Escherichia coli[ORGN]');
$remote_blastxml->retrieve_parameter('FORMAT_TYPE', 'XML');
$inputfilename = Bio::Root::IO->catfile("t","data","ecolitst.fa");
- eval {require Bio::SearchIO::blastxml;};
- if ($@) {
- skip('Skip blastxml tests probably because XML::SAX not installed',5);
- }
-
ok(1, 'XML BLAST');
!
$r = $remote_blastxml->submit_blast($inputfilename);
ok($r);
--- 13,156 ----
}
use Test::More;
!
! eval {
! require IO::String;
! require LWP;
! require LWP::UserAgent;
! };
! if ($@) {
! plan skip_all => 'IO::String or LWP or LWP::UserAgentnot installed. This means Bio::Tools::Run::RemoteBlast is not usable. Skipping tests';
! }
! elsif (!$DEBUG) {
! plan skip_all => 'Must set BIOPERLDEBUG=1 for network tests';
! }
! else {
! plan tests => 21;
! }
!
! use_ok('Bio::Tools::Run::RemoteBlast');
! use_ok('Bio::SeqIO');
! use_ok('Bio::AlignIO');
! use_ok('Bio::Seq');
! use_ok('Bio::Root::IO');
! use_ok('Env');
}
! my $prog = 'blastp';
! my $db = 'swissprot';
! my $e_val= '1e-10';
! my $v = $DEBUG > 1;
! my $remote_blast = Bio::Tools::Run::RemoteBlast->new('-verbose' => $v,
! '-prog' => $prog,
! '-data' => $db,
! '-expect' => $e_val,
! );
! $remote_blast->submit_parameter('ENTREZ_QUERY',
! 'Escherichia coli[ORGN]');
! my $inputfilename = Bio::Root::IO->catfile("t","data","ecolitst.fa");
! ok( -e $inputfilename);
+ ok(1, 'Text BLAST');
! my $r = $remote_blast->submit_blast($inputfilename);
! ok($r);
! print STDERR "waiting..." if( $v > 0 );
! while ( my @rids = $remote_blast->each_rid ) {
! foreach my $rid ( @rids ) {
! my $rc = $remote_blast->retrieve_blast($rid);
! if( !ref($rc) ) {
! if( $rc < 0 ) {
! $remote_blast->remove_rid($rid);
! # need a better solution for when 'Server failed to return any data'
! }
! print STDERR "." if ( $v > 0 );
! sleep 5;
! } else {
! ok(1);
! $remote_blast->remove_rid($rid);
! my $result = $rc->next_result;
! like($result->database_name, qr/swissprot/i);
! my $count = 0;
! while( my $hit = $result->next_hit ) {
! $count++;
! next unless ( $v > 0);
! print "sbjct name is ", $hit->name, "\n";
! while( my $hsp = $hit->next_hsp ) {
! print "score is ", $hsp->score, "\n";
! }
}
+ is($count, 3);
}
}
! }
! # test blasttable
! ok(1, 'Tabular BLAST');
! my $remote_blast2 = Bio::Tools::Run::RemoteBlast->new
! ('-verbose' => $v,
! '-prog' => $prog,
! '-data' => $db,
! '-readmethod' => 'blasttable',
! '-expect' => $e_val,
! );
! $remote_blast2->submit_parameter('ENTREZ_QUERY', 'Escherichia coli[ORGN]');
!
! $remote_blast2->retrieve_parameter('ALIGNMENT_VIEW', 'Tabular');
!
! $inputfilename = Bio::Root::IO->catfile("t","data","ecolitst.fa");
!
! $r = $remote_blast2->submit_blast($inputfilename);
! ok($r);
! print STDERR "waiting..." if( $v > 0 );
! while ( my @rids = $remote_blast2->each_rid ) {
! foreach my $rid ( @rids ) {
! my $rc = $remote_blast2->retrieve_blast($rid);
! if( !ref($rc) ) {
! if( $rc < 0 ) {
$remote_blast2->remove_rid($rid);
! # need a better solution for when 'Server failed to return any data'
! }
! print STDERR "." if ( $v > 0 );
! sleep 5;
! } else {
! ok(1);
! $remote_blast2->remove_rid($rid);
! my $result = $rc->next_result;
! my $count = 0;
! while( my $hit = $result->next_hit ) {
! $count++;
! next unless ( $v > 0);
! print "sbjct name is ", $hit->name, "\n";
! while( my $hsp = $hit->next_hsp ) {
! print "score is ", $hsp->score, "\n";
! }
}
+ is($count, 3);
}
}
+ }
+
+ SKIP: {
+ eval {require Bio::SearchIO::blastxml;};
+ if ($@) {
+ skip('Skip blastxml tests probably because XML::SAX not installed',5);
+ }
! my $remote_blastxml = Bio::Tools::Run::RemoteBlast->new('-prog' => $prog,
'-data' => $db,
'-readmethod' => 'xml',
'-expect' => $e_val,
! );
$remote_blast->submit_parameter('ENTREZ_QUERY',
! 'Escherichia coli[ORGN]');
$remote_blastxml->retrieve_parameter('FORMAT_TYPE', 'XML');
$inputfilename = Bio::Root::IO->catfile("t","data","ecolitst.fa");
ok(1, 'XML BLAST');
!
$r = $remote_blastxml->submit_blast($inputfilename);
ok($r);
***************
*** 162,166 ****
if( $rc < 0 ) {
$remote_blastxml->remove_rid($rid);
! ok(0);
}
print STDERR "." if ( $v > 0 );
--- 162,166 ----
if( $rc < 0 ) {
$remote_blastxml->remove_rid($rid);
! # need a better solution for when 'Server failed to return any data'
}
print STDERR "." if ( $v > 0 );
From sendu at dev.open-bio.org Thu Jun 7 12:00:34 2007
From: sendu at dev.open-bio.org (Senduran Balasubramaniam)
Date: Thu, 07 Jun 2007 16:00:34 +0000
Subject: [Bioperl-guts-l] bioperl-live/t BioDBGFF.t,1.45,1.46
Message-ID: <200706071600.l57G0YJC024280@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/t
In directory dev.open-bio.org:/tmp/cvs-serv24255/t
Modified Files:
BioDBGFF.t
Log Message:
corrected skips
Index: BioDBGFF.t
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/t/BioDBGFF.t,v
retrieving revision 1.45
retrieving revision 1.46
diff -C2 -d -r1.45 -r1.46
*** BioDBGFF.t 19 Apr 2007 13:11:43 -0000 1.45
--- BioDBGFF.t 7 Jun 2007 16:00:32 -0000 1.46
***************
*** 314,324 ****
is($t1->id,$tf->id);
! if (defined $tf->group_id) {
! my $t2 = $db->fetch_feature_by_gid($tf->group_id);
! is($t2->group_id,$tf->group_id);
! is($t2->group_id,$t1->group_id);
! } else {
! skip("fetch_feature_by_gid() not implemented by this adaptor",1);
! skip("fetch_feature_by_gid() not implemented by this adaptor",1);
}
--- 314,325 ----
is($t1->id,$tf->id);
! SKIP: {
! if (defined $tf->group_id) {
! my $t2 = $db->fetch_feature_by_gid($tf->group_id);
! is($t2->group_id,$tf->group_id);
! is($t2->group_id,$t1->group_id);
! } else {
! skip("fetch_feature_by_gid() not implemented by this adaptor",2);
! }
}
***************
*** 417,430 ****
is($db->delete_features(1,2,3),3);
! $result = eval {
! is($db->delete_groups(1,2,3,4,5),5);
! my @features = $db->get_feature_by_name(Sequence => 'Contig2');
! is($db->delete_groups(@features),1);
! 1;
! };
! if (!$result && $@ =~ /not implemented/i) {
! skip("delete_groups() not implemented by this adaptor",1);
! skip("delete_groups() not implemented by this adaptor",1);
}
ok(!defined eval{$db->delete()});
ok($db->delete(-force=>1));
--- 418,433 ----
is($db->delete_features(1,2,3),3);
! SKIP: {
! $result = eval {
! is($db->delete_groups(1,2,3,4,5),5);
! my @features = $db->get_feature_by_name(Sequence => 'Contig2');
! is($db->delete_groups(@features),1);
! 1;
! };
! if (!$result && $@ =~ /not implemented/i) {
! skip("delete_groups() not implemented by this adaptor",2);
! }
}
+
ok(!defined eval{$db->delete()});
ok($db->delete(-force=>1));
From bugzilla-daemon at portal.open-bio.org Thu Jun 7 12:06:52 2007
From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org)
Date: Thu, 7 Jun 2007 12:06:52 -0400
Subject: [Bioperl-guts-l] [Bug 2312] './Build test' failures on linux with
bioperl-live from cvs now()
In-Reply-To:
Message-ID: <200706071606.l57G6qBP029877@portal.open-bio.org>
http://bugzilla.open-bio.org/show_bug.cgi?id=2312
bix at sendu.me.uk changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
------- Comment #7 from bix at sendu.me.uk 2007-06-07 12:06 EST -------
I've fixed the problems in t/BioDBGFF.t and t/Tree.t.
t/RemoteBlast.t won't bother you anymore, though it probably needs a good
looking at from a dev. It works perfectly when the server is working perfectly,
as expected.
I can't help you with t/BioGraphics.t. It works fine here. Try contacting the
author of Bio::Graphics and/or posting to the bioperl mailling list.
(In reply to comment #6)
> Please add the help message as in comment #1 to the summary output of testsuite
> if there were any errors.
>
No, this won't be done. We use a standard perl build/test system (which means
we don't generate that output). If you don't know how to use the test system,
you can read the Bioperl documentation or the build system documentation.
--
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
From cjfields at dev.open-bio.org Thu Jun 7 13:49:23 2007
From: cjfields at dev.open-bio.org (Christopher John Fields)
Date: Thu, 07 Jun 2007 17:49:23 +0000
Subject: [Bioperl-guts-l] bioperl-live/Bio/SeqIO/Handler
GenericRichSeqHandler.pm, 1.1, 1.2
Message-ID: <200706071749.l57HnNgm024545@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/Bio/SeqIO/Handler
In directory dev.open-bio.org:/tmp/cvs-serv24509/Handler
Modified Files:
GenericRichSeqHandler.pm
Log Message:
Some more fixes for bug 2305
Index: GenericRichSeqHandler.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/SeqIO/Handler/GenericRichSeqHandler.pm,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** GenericRichSeqHandler.pm 16 Mar 2007 20:39:45 -0000 1.1
--- GenericRichSeqHandler.pm 7 Jun 2007 17:49:21 -0000 1.2
***************
*** 218,221 ****
--- 218,227 ----
my %NOPROCESS = map {$_ => 1} qw(DBSOURCE ORGANISM FEATURES);
+ our %VALID_ALPHABET = (
+ 'bp' => 'dna',
+ 'aa' => 'protein',
+ 'rc' => '' # rc = release candidate; file has no sequences
+ );
+
=head2
***************
*** 224,230 ****
Function:
Returns :
! Args :
! Throws :
! Note :
=cut
--- 230,238 ----
Function:
Returns :
! Args : -format Sequence format to be mapped for handler methods
! -builder Bio::Seq::SeqBuilder object (normally defined in
! SequenceStreamI object implementation constructor)
! Throws : On undefined '-format' sequence format parameter
! Note : Still under heavy development
=cut
***************
*** 233,245 ****
my ($class, @args) = @_;
my $self = $class->SUPER::new(@args);
- # no need to chain args, just need access to Root and HandlerI methods
$self = {@args};
bless $self,$class;
! my ($format, $builder, $verbose) = $self->_rearrange([qw(FORMAT BUILDER VERBOSE)], @args);
$self->throw("Must define sequence record format") if !$format;
$self->format($format);
$self->handler_methods();
$builder && $self->seqbuilder($builder);
- $verbose && $self->verbose($verbose);
$self->location_factory();
return $self;
--- 241,251 ----
my ($class, @args) = @_;
my $self = $class->SUPER::new(@args);
$self = {@args};
bless $self,$class;
! my ($format, $builder) = $self->_rearrange([qw(FORMAT BUILDER)], @args);
$self->throw("Must define sequence record format") if !$format;
$self->format($format);
$self->handler_methods();
$builder && $self->seqbuilder($builder);
$self->location_factory();
return $self;
***************
*** 488,495 ****
my ($self, $data) = @_;
my (@tokens) = split m{\s+}, $data->{DATA};
! $self->{'_params'}->{'-display_id'} = shift @tokens;
! $self->{'_params'}->{'-length'} = shift @tokens;
$self->{'_params'}->{'-alphabet'} =
! (lc(shift @tokens) eq 'bp') ? 'dna' : 'protein';
if (($self->{'_params'}->{'-alphabet'} eq 'dna') || (@tokens > 2)) {
$self->{'_params'}->{'-molecule'} = shift(@tokens);
--- 494,515 ----
my ($self, $data) = @_;
my (@tokens) = split m{\s+}, $data->{DATA};
! my $display_id = shift @tokens;
! $self->{'_params'}->{'-display_id'} = $display_id;
! my $seqlength = shift @tokens;
! if (exists $VALID_ALPHABET{$seqlength}) {
! # moved one token too far. No locus name?
! $self->warn("Bad LOCUS name? Changing [".$self->{'_params'}->{'-display_id'}.
! "] to 'unknown' and length to ".$self->{'_params'}->{'-display_id'});
! $self->{'_params'}->{'-length'} = $self->{'_params'}->{'-display_id'};
! $self->{'_params'}->{'-display_id'} = 'unknown';
! # add token back...
! unshift @tokens, $seqlength;
! } else {
! $self->{'_params'}->{'-length'} = $seqlength;
! }
! my $alphabet = lc(shift @tokens);
$self->{'_params'}->{'-alphabet'} =
! (exists $VALID_ALPHABET{$alphabet}) ? $VALID_ALPHABET{$alphabet} :
! $self->warn("Unknown alphabet: $alphabet");
if (($self->{'_params'}->{'-alphabet'} eq 'dna') || (@tokens > 2)) {
$self->{'_params'}->{'-molecule'} = shift(@tokens);
***************
*** 665,669 ****
#$self->debug(Dumper($gn));
$self->annotation_collection->add_Annotation('gene_name', $gn,
! "Bio::Annotation::SimpleValue");
}
}
--- 685,689 ----
#$self->debug(Dumper($gn));
$self->annotation_collection->add_Annotation('gene_name', $gn,
! "Bio::Annotation::StructuredValue");
}
}
***************
*** 1082,1109 ****
}
- # uses Bio::SeqIO::FTHelper, not up and running yet...
- # GenBank Feature Table
- sub _genbank_fthelper {
- my ($self,$data) = @_;
- my ($key, $loc);
- # Make the new FTHelper object
- my $out = Bio::SeqIO::FTHelper->new();
- $out->verbose($self->verbose());
- $out->key($data->{'FEATURE_KEY'});
- $out->loc($data->{'LOCATION'});
- delete $data->{'FEATURE_KEY'};
- delete $data->{'LOCATION'};
- delete $data->{'NAME'};
- map {
- $out->field->{$_} ||= [];
- ref($data->{$_}) ? ($out->field->{$_} = $data->{$_}) :
- push(@{$out->field->{$_}},$data->{$_});
-
- } keys %{ $data };
- push @{ $self->{'_params'}->{'-features'} },
- $out->_generic_seqfeature($self->{'_locfactory'},
- $self->get_param('accession_number'));
- }
-
####################### ODDS AND ENDS #######################
--- 1102,1105 ----
From cjfields at dev.open-bio.org Thu Jun 7 13:49:23 2007
From: cjfields at dev.open-bio.org (Christopher John Fields)
Date: Thu, 07 Jun 2007 17:49:23 +0000
Subject: [Bioperl-guts-l] bioperl-live/Bio/SeqIO gbdriver.pm, 1.2,
1.3 genbank.pm, 1.164, 1.165
Message-ID: <200706071749.l57HnN0J024541@dev.open-bio.org>
Update of /home/repository/bioperl/bioperl-live/Bio/SeqIO
In directory dev.open-bio.org:/tmp/cvs-serv24509
Modified Files:
gbdriver.pm genbank.pm
Log Message:
Some more fixes for bug 2305
Index: genbank.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/SeqIO/genbank.pm,v
retrieving revision 1.164
retrieving revision 1.165
diff -C2 -d -r1.164 -r1.165
*** genbank.pm 5 Jun 2007 23:46:12 -0000 1.164
--- genbank.pm 7 Jun 2007 17:49:21 -0000 1.165
***************
*** 204,207 ****
--- 204,213 ----
swissprot GenBank GenPept REFSEQ embl PDB);
+ our %VALID_ALPHABET = (
+ 'bp' => 'dna',
+ 'aa' => 'protein',
+ 'rc' => '' # rc = release candidate; file has no sequences
+ );
+
sub _initialize {
my($self, at args) = @_;
***************
*** 257,263 ****
my @tokens = split(' ', $1);
- # there should be at least six tokens in the LOCUS line; if not we may be in trouble...
- $self->warn('Missing tokens in the LOCUS line; output may be malformed') if @tokens < 6;
-
# this is important to have the id for display in e.g. FTHelper,
# otherwise you won't know which entry caused an error
--- 263,266 ----
***************
*** 265,271 ****
$params{'-display_id'} = $display_id;
# may still be useful if we don't want the seq
! $params{'-length'} = shift(@tokens);
# the alphabet of the entry
! $params{'-alphabet'} = (lc(shift @tokens) eq 'bp') ? 'dna' : 'protein';
# for aa there is usually no 'molecule' (mRNA etc)
if (($params{'-alphabet'} eq 'dna') || (@tokens > 2)) {
--- 268,287 ----
$params{'-display_id'} = $display_id;
# may still be useful if we don't want the seq
! my $seqlength = shift(@tokens);
! if (exists $VALID_ALPHABET{$seqlength}) {
! # moved one token too far. No locus name?
! $self->warn("Bad LOCUS name? Changing [$params{'-display_id'}] to 'unknown' and length to $display_id");
! $params{'-display_id'} = 'unknown';
! $params{'-length'} = $display_id;
! # add token back...
! unshift @tokens, $seqlength;
! } else {
! $params{'-length'} = $seqlength;
! }
# the alphabet of the entry
! # shouldn't assign alphabet unless one is specifically designated (such as for rc files)
! my $alphabet = lc(shift @tokens);
! $params{'-alphabet'} = (exists $VALID_ALPHABET{$alphabet}) ? $VALID_ALPHABET{$alphabet} :
! $self->warn("Unknown alphabet: $alphabet");
# for aa there is usually no 'molecule' (mRNA etc)
if (($params{'-alphabet'} eq 'dna') || (@tokens > 2)) {
***************
*** 1073,1077 ****
Args :
-
=cut
--- 1089,1092 ----
Index: gbdriver.pm
===================================================================
RCS file: /home/repository/bioperl/bioperl-live/Bio/SeqIO/gbdriver.pm,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** gbdriver.pm 27 Mar 2007 12:56:57 -0000 1.2
--- gbdriver.pm 7 Jun 2007 17:49:21 -0000 1.3
***************
*** 207,211 ****
sub next_seq {
! my $self = shift;
local($/) = "\n";
my ($ann, $data, $annkey);
--- 207,211 ----
sub next_seq {
! my $self = shift;
local($/) = "\n";
my ($ann, $data, $annkey);
***************
*** 253,261 ****
chomp $seqdata->{DATA};
# postprocessing for some data
- #if (exists $POSTPROCESS_DATA{ $seqdata->{NAME} }) {
- # my $mt = "_process_".lc $seqdata->{NAME};
- # $self->$mt($seqdata);
- #}
-
if ($seqdata->{NAME} eq 'FEATURES') {
$self->_process_features($seqdata)
--- 253,256 ----
***************
*** 300,303 ****
--- 295,370 ----
}
+ sub next_chunk {
+ my $self = shift;
+ local($/) = "\n";
+ my ($ann, $data, $annkey);
+ my $endrec = my $seenfeat = 0;
+ my $seqdata;
+ my $seenlocus;
+ my $hobj = $self->seqhandler;
+ PARSER:
+ while (defined(my $line = $self->_readline)) {
+ next if $line =~ m{^\s*$};
+ # have to catch this at the top of the loop, then exit SEQ loop on //
+ # The reason? The regex match for ann/feat keys also matches some lines
+ # in the sequence; no easy way around it since some feature keys may
+ # start with a number as well
+ if ($ann && $ann eq 'ORIGIN') {
+ SEQ:
+ while (defined($line)) {
+ last SEQ if index($line,'//') == 0;
+ $seqdata->{DATA} .= uc