Giter Club home page Giter Club logo

bioperl-run's Introduction

Description

This is the home for bioperl-run, which contain modules that provides a Perl interface to various bioinformatics applications. This allows various applications to be used with common BioPerl objects.

See the Changes file for more information about what is contained in here.

Installation

See the accompanying INSTALL file for details on installing bioperl-run.

Feedback

Write down any problems or praise and send them to [email protected].

Bugs

Bug reports can be made using the GitHub Issues tracker for this distribution.

bioperl-run's People

Contributors

amackey avatar arareko avatar bosborne avatar carandraug avatar chadadavis avatar cjfields avatar cmungall avatar daisieh avatar davemessina avatar dmr3 avatar fangly avatar fjossandon avatar genehack avatar heikkil avatar hettling avatar hlapp avatar hyphaltip avatar jhannah avatar leto avatar lstein avatar majensen avatar markjohnson avatar pcantalupo avatar rbuels avatar scottcain avatar sendu avatar sharpton avatar trutane avatar viklund avatar winni2k avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bioperl-run's Issues

Bug in Eponine test

The t/Eponine.t test failed if Java not installed.

There is an error in line 20:

open(my $PIPE,"java -version 2>&1 |") || exit;

If Java not installed the test just exits and the test plan fails.

Bio::Tools::Run::Genewise doesn't accept parameters as described in its documentation


Author Name: Dave Messina (@DaveMessina)
Original Redmine Issue: 3072, https://redmine.open-bio.org/issues/3072
Original Date: 2010-05-02
Original Assignee: Bioperl Guts


I’m pasting my email pretty much verbatim below, but here’s a link to the thread:
http://groups.google.com/group/bioperl-l/t/2820ca0eeef24613

The syntax needed to pass the ‘quiet’ flag to Genewise is:

  1. Build a Genewise alignment factory
    my $factory = Bio::Tools::Run::Genewise->new();
  1. turn on the quiet switch
    $factory->QUIET (1);
  1. genes is an array of Bio::SeqFeature::Gene::GeneStructure objects mygenes = $factory->run($protein_seq, $genomic_seq);

This turns out be incorrectly documented on the man page, at least in part:
Available Params:

NB: These should be passed without the ‘-’ or they will be ignored,
except switches such as ‘hmmer’ (which have no corresponding value)
which should be set on the factory object using the AUTOLOADed methods
of the same name.

Model [-codon,-gene,-cfreq,-splice,-subs,-indel,-intron,-null]
Alg [-kbyte,-alg]
HMM [-hmmer]
Output [-gff,-gener,-alb,-pal,-block,-divide]
Standard [-help,-version,-silent,-quiet,-errorlog]

That is, these don’t work as expected:

$factory->quiet;
$factory->quiet(1);

due to a conflict with the quiet() method inherited from Bio::Tools::Run::WrapperBase.

And passing a true value such as 1 is in fact necessary or the switch-type parameters won’t be set.

So it looks like the parameter passing system in B::T::R::Genewise might benefit from some revision.

Suggested solutions are (in increasing order of expected effort):

  1. make a minimal fix so that switch-type parameters automatically get a TRUE value and the WrapperBase::quiet() collision is eliminated.

  2. Rewrite the parameter setup to use an internal _params array instead of AUTOLOAD

  3. Move B::T::R::Genewise over to the WrapperBase system entirely.

Bio::Tools::Run::Alignment::MAFFT: not able to specify alignment run parameters


Author Name: Oliver Niehuis (Oliver Niehuis)
Original Redmine Issue: 3075, https://redmine.open-bio.org/issues/3075
Original Date: 2010-05-10
Original Assignee: Bioperl Guts


Hi,

this is request to update the Bio::Tools::Run::Alignment::MAFFT module. I tried to run the alignment program MAFFT with the Bio::Tools::Run::Alignment::MAFFT module, and while it is possible to run MAFFT with the default parameters, the module, in its current form, apparently does not allow to set specific parameters. For example: —maxiterate 1000 —localpair

Having used TCOFFEE and the Bio::Tools::Run::Alignment::Tcoffee module before, I specified the MAFFT run parameters as follows:

params = ('localpair', 'maxiterate' => 1000); $factory = Bio::Tools::Run::Alignment::MAFFT->new(params);

Unfortunately, this code causes an exception error:

——————- EXCEPTION ——————-
MSG: Unallowed parameter: LOCALPAIR !
STACK Bio::Tools::Run::Alignment::MAFFT::AUTOLOAD /sw/lib/perl5/5.8.8/ Bio/Tools/Run/Alignment/MAFFT.pm:211
STACK Bio::Tools::Run::Alignment::MAFFT::new /sw/lib/perl5/5.8.8/Bio/ Tools/Run/Alignment/MAFFT.pm:196
STACK toplevel /Users/Oliver/Desktop/Orthologs/ Generate_FASTA_files_of_orthologs.pl:55
——————————————————-

I posted the problem to the [email protected] list server and got some useful feedback. However, the problem has not been solved yet. Since I was encouraged to submit the problem as a bug at http://bugzilla.bioperl.org, I am reporting the problem here. I hope it is not out of space.

Best wishes,
Oliver

Best wishes,
Oliver

ecoli.nt not available from ftp://ncbi.nlm.nih.gov, causes t/Tools/Run/StandaloneBlast.t to fail


Author Name: Joel Martin (Joel Martin)
Original Redmine Issue: 2908, https://redmine.open-bio.org/issues/2908
Original Date: 2009-09-01
Original Assignee: Bioperl Guts


ecoli.nt is no longer in ftp://ftp.ncbi.nih.gov/blast/db/FASTA
without this a number of tests in t/Tools/Run/StandAloneBlast.t are skipped, then tests 43 fails as the sequence it needs wasn’t read due to the skipped tests ( would have been read in ->next_seq if they hadn’t been skipped ).

seems recent that ecoli.nt quit existing as this test passed for me recently.
or we’ve just had a recent resync with ncbi.

'cpgplot' input sequence not recognized

Session info:
perl = v5.22.0
Mac OS = 10.11.6
BioPerl-Run-1.007001

From Bio::Factory::EMBOSS when trying to provide input sequence for cpgplot as a variable, I do get an error message saying:
Died: ajResourceinNewDrcat 'AGGT ... (abbreviated for clarity) ... GGAG' failed to find drcat
This seems to be composition dependent as I do not get that for every sequence provided. It seems this error only shows up for sequences that do have CpG island identified.

Also occasionally I do get error message saying:
Uncaught exception: Formatting Overflow, raised at ajfmt.c:1309

The above only applies for some cases not for all, I only get those messages for some sequences.

When I, however provide the input sequence with asis prefix like so: sequence => "asis:$sequence" program completes with output.

As long as we are on cpgplot, I would like to also mention that with plot => 'Y' provided, I do get another error message for sequences for which CpG islands have been identified:

*** PLPLOT ERROR ***
Unable to either (1) open/find or (2) allocate memory for the font file
Program aborted

This can be turned off by providing plot => 'N' if one is not interested in graphical output.
I do have plplot installed with my package manager.

Any assistance would be appreciated.

Add Amap, Kalign and Probcon Quiet option


Author Name: Nathan S. (Nathan S.)
Original Redmine Issue: 2127, https://redmine.open-bio.org/issues/2127
Original Date: 2006-10-26
Original Assignee: Bioperl Guts


Figure out if Amap, Kalign and Probcon can have a quite option to stop output to screen. I know Amap specifically writes output to STDOUT, but this could be redirected to a file and then read back in if required while STDERR is redirected to /dev/null.

Bio::Tools::Run::BWA failing tests


Author Name: Chris Fields (@cjfields)
Original Redmine Issue: 3210, https://redmine.open-bio.org/issues/3210
Original Date: 2011-04-19
Original Assignee: Bioperl Guts


I have TODO’d the assembly pipeline tests for t/BWA.t in bioperl-run master branch, these are failing with the latest bwa (may be version inconsistencies).

cjfields@pyrimidine:~/bioperl/bioperl-run$ bwa

Program: bwa (alignment via Burrows-Wheeler transformation)
Version: 0.5.9-r16
Contact: Heng Li 

Usage:   bwa  [options]

Command: index         index sequences in the FASTA format
         aln           gapped/ungapped alignment
         samse         generate alignment (single ended)
         sampe         generate alignment (paired ended)
         bwasw         BWA-SW for long queries

         fa2pac        convert FASTA to PAC format
         pac2bwt       generate BWT from PAC
         pac2bwtgen    alternative algorithm for generating BWT
         bwtupdate     update .bwt to the new format
         pac_rev       generate reverse PAC
         bwt2sa        generate SA from BWT and Occ
         pac2cspac     convert PAC to color-space PAC
         stdsw         standard SW/NW alignment

cjfields@pyrimidine:~/bioperl/bioperl-run$ t t/BWA.t 
t/BWA.t .. 
1..36
ok 1 - make a factory using command 'aln'
ok 2 - parameters changed on construction
ok 3 - access parameter
ok 4 - parameters_changed cleared on read
ok 5 - set a param not set in constructor
ok 6 - parameters_changed set
ok 7 - parameter really set
ok 8 - original parameter unchanged
ok 9 - parameters_changed cleared on read
ok 10 - change an original parameter
ok 11 - parameter really changed
ok 12 - reset parameters with arg
ok 13 - original parameters undefined
ok 14 - parameter really reset via arg
ok 15 - parameters changed
ok 16 - all available options
ok 17 - available parameters
ok 18 - available switches
ok 19 - get_parameters correct
ok 20 - command attribute set
ok 21 - internal command array set
ok 22 - internal prefix hash set
ok 23 - commands filtered by prefix
ok 24 - translate params
ok 25 - make refseq index factory
ok 26 - index refseq
ok 27 - make aln factory
ok 28 - map read1 to refseq
ok 29 - map read 2 to refseq
ok 30 - paired read assembly factory
ok 31 - assemble paired reads
ok 32 - make a full assembly factory
ok 33 - command attribute set
[bam_parse_region] invalid region.
[bam_parse_region] invalid region.

--------------------- WARNING ---------------------
MSG: Got a sequence with no letters in it cannot guess alphabet
---------------------------------------------------

--------------------- WARNING ---------------------
MSG: Got a sequence with no letters in it cannot guess alphabet
---------------------------------------------------
ok 34 - make full assy
not ok 35 - number of contigs # TODO latest bwa doesn't work with assembly pipeline

#   Failed (TODO) test 'number of contigs'
#   at t/BWA.t line 109.
#          got: '419'
#     expected: '204'
not ok 36 - number of singlets # TODO latest bwa doesn't work with assembly pipeline

#   Failed (TODO) test 'number of singlets'
#   at t/BWA.t line 110.
#          got: '15'
#     expected: '220'
ok
All tests successful.
Files=1, Tests=36,  6 wallclock secs ( 0.03 usr  0.01 sys +  6.50 cusr  0.22 csys =  6.76 CPU)
Result: PASS

Index on cpanm?

We use cpanm for all of our installs and it doesn't appear to be possible to build in this way.

I can see that you have an alternative build method in your INSTALL file but is the a good reason why this can't be installed as we can BioPerl itself?

Bio::Tools::Run::Phylo::Phyml, rand_starts cannot be set to 0

In Bio::Tools::Run::Phylo::Phyml, the parameter rand_starts cannot be set to 0.

=head2 rand_starts
 Title   : rand_starts
 Usage   : $factory->rand_starts(10);
 Function: Sets the number of initial random SPR trees
 Returns : integer (defaults to 1)
 Args    : None to get, integer to set.
v3.* only; only valid if $prog-E<gt>search is 'SPR'
=cut

sub rand_starts {
    my ( $self, $value ) = @_;
    $self->throw("Not a valid parameter [rand_starts] prior to PhyML v3")
      if $self->version < 3;
    if ( defined $value ) {
        die "Invalid number [$value]"
          unless $value =~ /^[-+]?\d+$/;
        $self->{_rand_starts} = $value;
    }
    return $self->{_rand_starts} || 1;
}

Issue with Bowtie in test suite

Hi,
there is another bug report concerning bowtie tests. The error message in the build is:

#   Failed test 'bowtie success'
#   at t/Bowtie.t line 188.
#                   '# reads processed: 1000
# # reads with at least one reported alignment: 1000 (100.00%)
# # reads that failed to align: 0 (0.00%)
# Reported 1000 paired-end alignments
# '
#     doesn't match '(?^:reads processed: 2000)'

#   Failed test 'bowtie success'
#   at t/Bowtie.t line 195.
#                   '# reads processed: 1000
# # reads with at least one reported alignment: 1000 (100.00%)
# # reads that failed to align: 0 (0.00%)
# Reported 1000 paired-end alignments
# '
#     doesn't match '(?^:reads processed: 2000)'
# Looks like you failed 2 tests of 61.

and the summary says

Test Summary Report
-------------------
t/Bowtie.t                  (Wstat: 512 Tests: 61 Failed: 2)
  Failed tests:  43, 45
  Non-zero exit status: 2
Files=72, Tests=1690, 314 wallclock secs ( 0.57 usr  0.21 sys + 243.57 cusr 10.84 csys = 255.19 CPU)
Result: FAIL
Failed 1/72 test programs. 2/1690 subtests failed.

Please let me know if you need any further information.
Kind regards, Andreas.

Bio::Tools::Run::StandAloneBlastPlus tests failing with latest BLAST+


Author Name: Chris Fields (@cjfields)
Original Redmine Issue: 3213, https://redmine.open-bio.org/issues/3213
Original Date: 2011-04-20
Original Assignee: Bioperl Guts


Indexing of BLAST databases using makeblastdb with BLAST+ 2.2.24+ and up fail with duplicated IDs. This is causing t/SABlastPlus.t tests to fail.

cjfields@pyrimidine:~/bioperl/bioperl-run$ blastp -version
blastp: 2.2.24+
Package: blast 2.2.24, build Aug 12 2010 17:48:12
cjfields@pyrimidine:~/bioperl/bioperl-run$ t t/SABlastPlus.t 
t/SABlastPlus.t .. 
1..63
ok 1 - use Bio::Tools::Run::StandAloneBlastPlus;
ok 2 - use Bio::Tools::Run::WrapperBase;
ok 3 - use Bio::Tools::Run::WrapperBase::CommandExts;
ok 4 - BlastPlus factory
# DB and mask make tests
ok 5 - make factory

------------- EXCEPTION: Bio::Root::Exception -------------
MSG: /opt/local/blast-plus/bin/makeblastdb call crashed: There was a problem running /opt/local/blast-plus/bin/makeblastdb : BLAST Database creation error: Error: Duplicate seq_ids are found.

STACK: Error::throw
STACK: Bio::Root::Root::throw /home/cjfields/bioperl/bioperl-live/Bio/Root/Root.pm:472
STACK: Bio::Tools::Run::WrapperBase::_run /home/cjfields/bioperl/bioperl-live/Bio/Tools/Run/WrapperBase/CommandExts.pm:1012
STACK: Bio::Tools::Run::StandAloneBlastPlus::make_db /home/cjfields/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/StandAloneBlastPlus.pm:740
STACK: t/SABlastPlus.t:37
-----------------------------------------------------------
# Looks like you planned 63 tests but ran 5.
# Looks like your test exited with 29 just after 5.
Dubious, test returned 29 (wstat 7424, 0x1d00)
Failed 58/63 subtests 

Test Summary Report
-------------------
t/SABlastPlus.t (Wstat: 7424 Tests: 5 Failed: 0)
  Non-zero exit status: 29
  Parse errors: Bad plan.  You planned 63 tests but ran 5.
Files=1, Tests=5,  0 wallclock secs ( 0.01 usr  0.02 sys +  0.34 cusr  0.06 csys =  0.43 CPU)
Result: FAIL
Failed 1/1 test programs. 0/5 subtests failed.

StandAloneBlastPlus can't handle the new multiple-valued -outfmt option

Problem below came in on the list. I can replicate it. The latest blast+ accepts the following

... -outfmt "7 sseqid qseqid" ...

I.e., enclosing multiple tokens in quotes as a value for the -outfmt option is a new feature.

The error below indicates that where the parameter -outfmt is set in the code (to be sent to the command line), the full string
"<token> <token> ..."
is not treated as an atom of text.

Preliminary investigation sez the problem lies deep within Bio::Tools::Run::WrapperBase::CommandExts, and might involve Bio::Root::RootI::_set_from_args, which was written in the Year 1.

I will see what I can do.
MAJ

I’m working with this script that uses StandAloneBlastPlus, and
I
would like to take advantage of a new feature in the latest
releases of blast+, which allows me to present the query coverage

in the output (among other values). For that to work, the value
of
–outfmt needs to be quoted (for example, -outfmt “7 std
qcovs”), so
I’m passing the outfmt parameter via

-method_args => [ '-outfmt' => '"7 std qcovs"' ]

(I’m using single quotes with doubles inside, so that the
double
quotes are passed literally).

But when I run it, the quotes seem to get lost and I end up with
the error I get when I pass that value without the quotes:

Error: Too many positional arguments (1), the offending value:
std

I have tried lots of combinations with single, double quotes,
character escaping and I couldn’t find the way to make it work.

Bio::Tools::Run::StandAloneBlastPlus HTML output

How can we get an html output?

I have tried several things but it either outputs in html format (with errors) or regular format. This is how it looks:

No HTML Output

# Create StandAloneBlastPlus Factory
        my $fac = Bio::Tools::Run::StandAloneBlastPlus->new(
                    -db_data    => $subject,
                );

        # Perform BLAST call
        $fac->blastn(   -query          => $CRPfile,
                        -outfile        => $outFile,
                        -method_args    => [ -word_size => 7],
                    );

No HTML Output

# Create StandAloneBlastPlus Factory
        my $fac = Bio::Tools::Run::StandAloneBlastPlus->new(
                    -db_data    => $subject,
                );

        # Perform BLAST call
        $fac->blastn(   -query          => $CRPfile,
                        -outfile        => $outFile,
                        -method_args    => [ -word_size => 7, html => ''],
                    );

HTML Output, but no results stored in object when while ( my $result = $fac->next_result ) { ... }

# Create StandAloneBlastPlus Factory
        my $fac = Bio::Tools::Run::StandAloneBlastPlus->new(
                    -db_data    => $subject,
                );

        # Perform BLAST call
        $fac->blastn(   -query          => $CRPfile,
                        -outfile        => $outFile,
                        -method_args    => [ -word_size => 7, html => ' '],
                    );

BEDTools issues

Seeing the following with recent version of bedtools:

11:09 $ prove -lrv t/BEDTools.t
t/BEDTools.t ..
1..423
ok 1 - make a default factory
ok 2 - default to command 'bam_to_bed'
ok 3 - make a factory using command 'annotate'
ok 4 - factory command for 'annotate' is correct
ok 5 - all available options for 'annotate'
ok 6 - available parameters for 'annotate'
ok 7 - available switches for 'annotate'
not ok 8 - get version for 'annotate'
#   Failed test 'get version for 'annotate''
#   at t/BEDTools.t line 211.
ok 9 - can run command 'annotate'
ok 10 - result files exists for command 'annotate'
ok 11 - can return output format for command 'annotate'
ok 12 - result claims to be in correct format for command 'annotate'
ok 13 - can return output file for command 'annotate'
ok 14 - file format of '/var/folders/h3/j6j2rjzd719djds1f6b9llrc0000gp/T/DwCA49vrX6/Em_aSbREwF.bed' consistent with claim for 'annotate'
ok 15 - can set want to IO object for command 'annotate'
ok 16 - can get the basic object result for command 'annotate'
ok 17 - 'returned object is correct for command 'annotate'' isa 'Bio::Root::IO'
ok 18 - can get the specific object result for command 'annotate'
ok 19 - 'returned object is correct for command 'annotate'' isa 'Bio::SeqFeature::Collection'
ok 20 - correct number of features for command 'annotate'
ok 21 - make a factory using command 'fasta_from_bed'
ok 22 - factory command for 'fasta_from_bed' is correct
ok 23 - all available options for 'fasta_from_bed'
ok 24 - available parameters for 'fasta_from_bed'
ok 25 - available switches for 'fasta_from_bed'
not ok 26 - get version for 'fasta_from_bed'
#   Failed test 'get version for 'fasta_from_bed''
#   at t/BEDTools.t line 211.
ok 27 - can run command 'fasta_from_bed'
ok 28 - result files exists for command 'fasta_from_bed'
ok 29 - can return output format for command 'fasta_from_bed'
ok 30 - result claims to be in correct format for command 'fasta_from_bed'
ok 31 - can return output file for command 'fasta_from_bed'
ok 32 - file format consistent with claim for 'fasta_from_bed'
ok 33 - can set want to IO object for command 'fasta_from_bed'
ok 34 - can get the basic object result for command 'fasta_from_bed'
ok 35 - 'returned object is correct for command 'fasta_from_bed'' isa 'Bio::Root::IO'
ok 36 - can get the specific object result for command 'fasta_from_bed'
ok 37 - 'returned object is correct for command 'fasta_from_bed'' isa 'Bio::SeqIO'
ok 38 - correct number of sequences for command 'fasta_from_bed'
ok 39 - make a factory using command 'overlap'
ok 40 - factory command for 'overlap' is correct
ok 41 - all available options for 'overlap'
ok 42 - available parameters for 'overlap'
ok 43 - available switches for 'overlap'
not ok 44 - get version for 'overlap'
#   Failed test 'get version for 'overlap''
#   at t/BEDTools.t line 211.
ok 45 - can set parameter -columns => '2,3,5,6'

------------- EXCEPTION: Bio::Root::Exception -------------
MSG: No executable!
STACK: Error::throw
STACK: Bio::Root::Root::throw /Users/cjfields/bioperl/bioperl-live/lib/Bio/Root/Root.pm:447
STACK: Bio::Tools::Run::BEDTools::run /Users/cjfields/bioperl/bioperl-run/lib/Bio/Tools/Run/BEDTools.pm:278
STACK: t/BEDTools.t:274
-----------------------------------------------------------
# Looks like your test exited with 2 just after 45.
Dubious, test returned 2 (wstat 512, 0x200)
Failed 381/423 subtests

Test Summary Report
-------------------
t/BEDTools.t (Wstat: 512 Tests: 45 Failed: 3)
  Failed tests:  8, 26, 44
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 423 tests but ran 45.
Files=1, Tests=45,  8 wallclock secs ( 0.03 usr  0.01 sys +  0.79 cusr  4.45 csys =  5.28 CPU)
Result: FAIL
✘-1 ~/bioperl/bioperl-run [master|…3⚑ 2]
11:53 $ which bedtools
/usr/local/bin/bedtools
✘-1 ~/bioperl/bioperl-run [master|…3⚑ 2]
11:54 $ bedtools --version
bedtools v2.27.1

-task blastn option is not available in Bio::Tools::Run::StandAloneBlastPlus


Author Name: Peng Yu (Peng Yu)
Original Redmine Issue: 3097, https://redmine.open-bio.org/issues/3097
Original Date: 2010-06-09
Original Assignee: Bioperl Guts


Anyway, I restate my original problem below.

bioperl’s bl2seq by default is equivalent to the following command.
blastn -query first.fa -subject second.fa

I want to add the option ‘-task blastn’.
blastn -task blastn -query first.fa -subject second.fa

But I don’t find such option in bioperl’s bl2seq.

BTW, the bioperl code I used is listed below, where $seq1 and $seq2 are constructed from Bio::SeqIO->new.

my $factory = Bio::Tools::Run::StandAloneBlastPlus->new();
my $result=$factory->bl2seq(
-method=>‘blastn’,
-query=> $seq1,
-subject=> $seq2
);
$factory->cleanup;

Tests fail when command is not installed.

I'm going to gamble on the useful of an information-impoverished bug report. I'm not sure I'm going to have time to root out all of the issues, which is lame, but on the other hand at least this might call attention to the issue.

I'm trying to install a copy of the current, f48f0a5f5d, version of bioperl-run. I have very few of the underlying commands on my path. When running tests I get the following failures.

t/BWA.t                     (Wstat: 512 Tests: 25 Failed: 0)
  TODO passed:   24
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 36 tests but ran 25.
t/Bowtie.t                  (Wstat: 512 Tests: 34 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 73 tests but ran 34.
t/Gumby.t                   (Wstat: 65280 Tests: 8 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 124 tests but ran 8.
t/MAFFT.t                   (Wstat: 512 Tests: 6 Failed: 2)
  Failed tests:  5-6
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 23 tests but ran 6.
t/MCS.t                     (Wstat: 65280 Tests: 4 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 24 tests but ran 4.
t/Maq.t                     (Wstat: 0 Tests: 51 Failed: 0)
  TODO passed:   24
t/Match.t                   (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 7 tests but ran 1.
t/PhastCons.t               (Wstat: 65280 Tests: 6 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 181 tests but ran 6.
t/SABlastPlus.t             (Wstat: 512 Tests: 5 Failed: 0)
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 69 tests but ran 5.
t/Samtools.t                (Wstat: 512 Tests: 24 Failed: 0)
  TODO passed:   24
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 40 tests but ran 24.
t/StandAloneFasta.t

In the cases I've tracked down so far the root of the problem is that "someone" overrode/reimplemented WrapperBase's executable method but the version that is getting called does not throw an exception if the command is not present. For example, BWA, which has AssemblerBase in it's ISA, which ...., which ends up in WrapperBase::executable, which returns an undef instead of die'ing. That undef foils the -requires_executable test and blooey.

I believe that the others are similar, will dig a bit more before I just pull out my sawzall.

Wrappers for ExaML, ExaBayes, *BEAST

Hi,

not sure if this is the right place to ask but we have been writing some Bio::Tools::Run::Phylo::* wrappers (for the above-mentioned programs) that we would like to contribute to bioperl-run. The code that we have now is here: https://github.com/naturalis/supersmart/tree/master/lib/Bio/Tools/Run/Phylo

What would we need to do to make them so that they are acceptable to bioperl-run? We introduced a dependency that you probably don't want (though we only use it for data munging that we can probably do some other way), and there's the complicating issue that these tools want to be run under MPI so the wrappers have getters/setters for mpirun, and the command string is a longer. Other than that we've tried to be faithful to the Bio::Tools::Run::Phylo API.

Thanks!

@hettling & @rvosa

Codeml (v 4v4d) using fixed kappa value, reports wrong kappa


Author Name: Janet Young (Janet Young)
Original Redmine Issue: 3331, https://redmine.open-bio.org/issues/3331
Original Date: 2012-03-06
Original Assignee: Bioperl Guts


Hi there,

After a long absence, I’ve started using Bioperl to run PAML again. Apologies if I’m bringing up another one of those annoying “PAML changed and broke the parser” kinds of issues… Is PAML v4.4d supported?

I found a minor bug/issue I thought you might want to know about: if I set up a ka_ks_factory and specify fix_kappa = 1, then I recover the kappa via get_MLmatrix, it actually reports to me the omega (not the kappa). I’ll attach a script that shows this (I’ll include output as comments in the script). I think the example script should explain everything, but please let me know if you need more details…

thanks very much,

Janet Young


Dr. Janet Young

Tapscott and Malik labs

Fred Hutchinson Cancer Research Center
1100 Fairview Avenue N., C3-168,
P.O. Box 19024, Seattle, WA 98109-1024, USA.

email: jayoung …at… fhcrc.org


Bio::Tools::Run::Phylo::Phyml Lacks LG model of AA sequence evolution


Author Name: Jessen Bredeson (Jessen Bredeson)
Original Redmine Issue: 3226, https://redmine.open-bio.org/issues/3226
Original Date: 2011-05-02
Original Assignee: Bioperl Guts


Page 12 of the PhyML 3.0 manual (at http://www.atgc-montpellier.fr/download/papers/phyml\_manual\_2009.pdf) states that the executable supports the LG model of sequence evolution and is the default amino acid substitution model, however the current version of the Bio::Tools::Run::Phylo::Phyml wrapper does not reflect this.

Attached is a ‘git diff’ of my and the available bioperl-run module.

Enjoy
Jessen

Bio::Factory::EMBOSS dies on OSX when checking for operating system

This is in reference to a legacy ticket I opened in 2011 that has not been resolved yet.

The same issue was encountered with the below session info:
perl = v5.22.0
Mac OS = 10.11.6
BioPerl-Run-1.007001

I was able to overcome this issue only by installing EMBOSS through an anaconda package manager for Mac OS. I was not able to resolve this issue via any other alternative way.

After installing EMBOSS via anaconda, I was able to successfully execute the code quoted in the legacy ticket.

Undocumented need for Array::Compare.


Author Name: Charles Plessy (Charles Plessy)
Original Redmine Issue: 3253, https://redmine.open-bio.org/issues/3253
Original Date: 2011-06-18
Original Assignee: Bioperl Guts


Dear BioPerl developers,

BioPerl-Run needs Array::Compare to run its regression tests (t/lib/Test/Warn.pm), but this is not documented anywhere so it slightly complicates packaging in Linux distributions like Debian (for keeping track of what a package needs).

Have a nice week-end,


Charles Plessy
Debian Med packaging team
http://www.debian.org/devel/debian-med
Tsurumi, Kanagawa, Japan

SABlastPlus tests fail with latest version of BLAST+

On master branch:

16:59 $ ./Build test --test-files t/SABlastPlus.t
t/SABlastPlus.t .. 1/73 # DB and mask make tests

------------- EXCEPTION: Bio::Root::Exception -------------
MSG: Unknown version output: blastdbcmd: 2.6.0+
 Package: blast 2.6.0, build Dec  7 2016 15:12:09

STACK: Error::throw
STACK: Bio::Root::Root::throw /Users/cjfields/bioperl/bioperl-live/Bio/Root/Root.pm:447
STACK: Bio::Tools::Run::BlastPlus::_version /Users/cjfields/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/BlastPlus.pm:158
STACK: Bio::Tools::Run::BlastPlus::program_version /Users/cjfields/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/BlastPlus.pm:128
STACK: Bio::Tools::Run::StandAloneBlastPlus::program_version /Users/cjfields/bioperl/bioperl-run/blib/lib/Bio/Tools/Run/StandAloneBlastPlus.pm:691
STACK: t/SABlastPlus.t:45
-----------------------------------------------------------
# Looks like your test exited with 29 just after 9.
t/SABlastPlus.t .. Dubious, test returned 29 (wstat 7424, 0x1d00)
Failed 64/73 subtests

Test Summary Report
-------------------
t/SABlastPlus.t (Wstat: 7424 Tests: 9 Failed: 0)
  Non-zero exit status: 29
  Parse errors: Bad plan.  You planned 73 tests but ran 9.
Files=1, Tests=9,  0 wallclock secs ( 0.02 usr  0.01 sys +  0.21 cusr  0.05 csys =  0.29 CPU)
Result: FAIL
Failed 1/1 test programs. 0/9 subtests failed.

Perl

THIS CODE IS NOT WORKING Showing directory or file not foun, Please help

$s = "agcttataatcgtacgtacgtacgtacgtacgtaccccggggtttt";
if ($s=~m/(tataat)/)
{
print "$1found\n";
}
else
{
print "tataat not found";
}

use LWP qw(C:\Perl\site\lib\LWP);
use LWP qw(C:\Perl\lib\LWP);
$url = "https://www.ncbi.nlm.nih.gov/nuccore/AABQ01000377.1?report=genbank";
$content = get $url;
print $content;

Bio::Tools::Run::Phylo::Phyml, tree_string


Author Name: Tristan Lefebure (Tristan Lefebure)
Original Redmine Issue: 3273, https://redmine.open-bio.org/issues/3273
Original Date: 2011-07-27
Original Assignee: Bioperl Guts


Hi there,
I am not quite sure I understand why tree_string() from Bio::Tools::Run::Phylo::Phyml returns
a string that looks like that (I removed the end of the tree):

BIONJ(((((((('92':0.0114354726,'12':0.0472591023)0.0000000000:0.0000005859,...

Why do we have this ‘BIONJ’ thing?

A quick look at the code in the _run() function gives :

       {
       open(my $FH_TREE, "<", $tree_file)
           || $self->throw("Phyml call ($command) did not give an output: $?");
       local $/;
       $self->{_tree} .= <$FH_TREE>;
   }

Why appending something to $self->{_tree}? What about just assigning the tree?

$self-\>{\_tree} = \<$FH\_TREE\>; 

I was about to fill a bug report, but then I saw that in Phyml.t:

   is substr($factory->tree_string, 0, 9), 'BIONJ(SIN', 'tree_string()';

Well, I am lost. Any help much appreciated…

infernal does not contan cmscore since version 1.1

Hi,
while trying to run unit tests while doing the bioperl-run Debian package I relaised that the Perl wrapper frequently calls cmscore. However, when looking at the infernal changelog of the Debian package since version 1.1~rc2 (dated 01 May 2013) it says

  cmscore no longer available

I'd recommend to reflect this in the wrapper code.
Kind regards, Andreas.

DB can't be found

I have a problem with providing psiblast wrapper with local database. Am I doing anything wrong here?

When trying to execute:

my $factory = Bio::Tools::Run::StandAloneBlastPlus->new(-db_name => '/db/SEQRES/pdb90.fa');
return $blast_report = $factory->psiblast(
-query => $[0],
-outfile => $
[1],
-num_iterations => $setup{'it'},
-evalue => $setup{'evalue'},
-show_gis => 1,
-num_threads => $setup{'processors'},
-num_alignments => 100000,
-out_pssm => $[0]->display_id().'.chk',
-out => $
[1]
);

I get:

MSG: DB 'pdb90' can't be found. To create, set -create => 1.
STACK: Error::throw
STACK: Bio::Root::Root::throw /usr/local/share/perl/5.18.2/Bio/Root/Root.pm:449
STACK: Bio::Tools::Run::StandAloneBlastPlus::new /usr/share/perl5/Bio/Tools/Run/StandAloneBlastPlus.pm:587
STACK: main::blastMe /home/users/seq2+.pl:298
STACK: /home/users/seq2+.pl:93

line 298 in my script is the first cited above.

Thanks for any suggestions!
Kamil

Bio::Tools::Run::Primer3 has not updated for Primer3 versions 2 and above


Author Name: John MC (John MC)
Original Redmine Issue: 3056, https://redmine.open-bio.org/issues/3056
Original Date: 2010-04-12
Original Assignee: Bioperl Guts


Bio::Tools::Run::Primer3 relies on the list of Primer3 1.X arguments hardcoded at $self->@PRIMER3_PARAMS for sanity check in add_targets.

However, primer3 versions 2.X, released from December 2008, uses a totally different set of arguments, many of them absent from @PRIMER3_PARAMS. As a result, if these new arguments were invoked at add_targets, such arguments would be patently ignored, per line 367 of primer3.pm.

Of course, experienced users can invoke $self->{’no_param_checks’}=1 to bypass the sanity check, but this is not something known to newcomers.

There’re three possible ways to solve the problem:

  1. Expand @PRIMER3_PARAMS to include the 2.X arguments;
  2. Remove line 367 of primer3.pm such that “invalid” arguments will be warned but will continued be processed nonetheless, or
  3. Encode a setter for no_param_checks.

Bio::Tools::Run::Phylo::Phyml -- Bootstrap and other confidence measures


Author Name: Adam Retchless (Adam Retchless)
Original Redmine Issue: 3201, https://redmine.open-bio.org/issues/3201
Original Date: 2011-04-13
Original Assignee: Bioperl Guts


The documentation for the Phyml wrapper does not describe how to send Phyml instructions for the calculation of bootstrap values or other confidence values.

The “_setparams” subroutine has a comment line explicitly stating “no bootstrap sets”, and cannot write this parameter (-b or —bootstrap in phyml 3).

If adding this parameter is not trivial, it may be worthwhile to clearly document that this feature is not implemented in the wrapper, since these confidence values are an important part of phylogeny estimation.

Bio::Tools::Run::StandAloneBlastPlus --remote database with '/' separator


Author Name: J Nelson (J Nelson)
Original Redmine Issue: 3322, https://redmine.open-bio.org/issues/3322
Original Date: 2012-02-02
Original Assignee: Bioperl Guts


The -remote parameter to Bio::Tools::Run::StandAloneBlastPlus->new() is throwing an error if --db_name contains a forward slash. The error text is: “Path specified by DB_DIR+DB_NAME ('$d') does not exist

Example:

my $db = Bio::Tools::Run::StandAloneBlastPlus->new(
    -db_name => 'Microbial/100226',
    -remote => 1
);

throws

------------- EXCEPTION: Bio::Root::Exception -------------
MSG: Path specified by DB_DIR+DB_NAME ('Microbial') does not exist
STACK: Bio::Root::Root::throw /usr/local/share/perl/5.10.1/Bio/Root/Root.pm:472
STACK: Bio::Tools::Run::StandAloneBlastPlus::new /usr/local/share/perl/5.10.1/Bio/Tools/Run/StandAloneBlastPlus.pm:552
STACK: testStandAloneBlastPlus_remote.pl:4
-----------------------------------------------------------

Some of the databases available do contain the forward slash in their name, as seen here: http://www.ncbi.nlm.nih.gov/staff/tao/URLAPI/remote\_blastdblist.html\#7.2 so it would be nice if StandAloneBlastPlus supported them.

I’ve attached a simple patch that I believe fixes the problem, as well as a sample script that demonstrates the error.

Bio::Tools::Run::Phylo::Phyml use default parameter for interleaved input, but it use sequential input

In Bio::Tools::Run::Phylo::Phyml, the default data_format parameter is 'i', which mean interleaved input, but the input file output by sub _write_phylip_align_file is sequential.

In the sub _write_phylip_align_file, $self->data_format('i') makes the data_format parameter set by user being ignored, and it contradict the '-interleaved' => 0 set when output the alignment.

 Title   : data_format
 Usage   : $phyml->data_format('s');
 Function: Sets PHYLIP format to 'i' interleaved or
           's' sequential
 Returns : set value, defaults to  'i'
 Args    : None to get, 'i' or 's' to set.
=cut

sub data_format {
    my ( $self, $value ) = @_;
    if ( defined $value ) {
        $self->throw("PHYLIP format must be 'i' or 's'")
          unless $value eq 'i'
              or $value eq 's';
        $self->{_data_format} = $value;
    }
    return $self->{_data_format} || 'i';
}
=head2 _write_phylip_align_file
 Title   : _write_phylip_align_file
 Usage   : obj->__write_phylip_align_file($aln)
 Function: Internal (not to be used directly)
           Writes the alignment into the tmp directory
           in PHYLIP interlieved format
 Returns : filename
 Args    : Bio::Align::AlignI
=cut

sub _write_phylip_align_file {
    my ( $self, $align ) = @_;

    my $tempfile = File::Spec->catfile( $self->tempdir, "aln$$.phylip" );
    $self->data_format('i');
    my $out = Bio::AlignIO->new(
        '-file'        => ">$tempfile",
        '-format'      => 'phylip',
        '-interleaved' => 0,
        '-longid'      => 1
    );
    $out->write_aln($align);
    $out->close();
    $out = undef;
    return $tempfile;
}

bioperl-run LVB.pm and LVB.t require updates for LVB version 2.3


Author Name: Daniel Barker (Daniel Barker)
Original Redmine Issue: 3125, https://redmine.open-bio.org/issues/3125
Original Date: 2010-07-28
Original Assignee: Bioperl Guts


The user interface to LVB has changed. From LVB 2.3, the user is no longer asked whether the analysis should be ‘fast’ or ‘slow’.

This change is not yet reflected in “lib/Bio/Tools/Run/Phylo/LVB.pm”. The DURATION parameter (and its action) should be removed. “t/LVB.t” will also require minor change.

Would someone like to make these changes? I just tried to update things myself, from trunk (“svn checkout http://svn.github.com/bioperl/bioperl-run.git”). However, even the previous version (LVB 2.2) fails tests, before I’ve modified anything. Last time I looked - some years ago - LVB 2.2 passed all its tests. Probably I’m doing something wrong.

Thank you very much,

Daniel

problem in Installing Bio::Seq, Bio::DB::GFF,

Hi, I have been trying to install these modules using cpan install command.
I have installed all the dependencies and my bioperl installation says it is up to date.

But when I try to install these modules using following command

sudo cpan install Bio::Seq or Bio::DB::GFF it gives me follwing error message

Test Summary Report

t/RemoteDB/HIV/HIVQuery.t (Wstat: 65280 Tests: 6 Failed: 1)
Failed test: 1
Non-zero exit status: 255
Parse errors: Bad plan. You planned 41 tests but ran 6.
Files=334, Tests=23870, 119 wallclock secs ( 4.48 usr 0.75 sys + 110.06 cusr 6.90 csys = 122.19 CPU)
Result: FAIL
Failed 1/334 test programs. 1/23870 subtests failed.
CJFIELDS/BioPerl-1.6.924.tar.gz
./Build test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports CJFIELDS/BioPerl-1.6.924.tar.gz

can someone please help me to solve the issue?
Thank you in advance
Amol

mumsa wrapper


Author Name: Albert Vilella (Albert Vilella)
Original Redmine Issue: 2070, https://redmine.open-bio.org/issues/2070
Original Date: 2006-08-11
Original Assignee: Bioperl Guts


Time permits, I intend to write a wrapper for MUMSA in bioperl-run.

Timo Lassmann and Erik L. L. Sonnhammer (2005)
Automatic assessment of alignment quality.
Nucleic Acids Research Vol.33(22) pp.7120-7128

MUMSA compares multiple sequence alignments, so my idea would be to put the module in Bio/Tools/Run/Alignment/.

What you reckon?

qualifiers for for water/needle@ Bio::Factory::EMBOSS

The latest docs for this module refer to "-asequence" and "-seqall" for these two tools, the latter seems to be rejected. I'm on Debian Testing (Stretch) which has EMBOSS 6.6.0. I found using EMBOSS actual docs that "-sequencea" and "-sequenceb" work instead.

Test with latest bowtie is failing

Hi,
there is an issue reported to the Debian bug tracker, which uncovers a problem with bowtie 1.1.2:

------------- EXCEPTION -------------
MSG: /usr/bin/bowtie call crashed: There was a problem running /usr/bin/bowtie : Encountered a space parsing the quality string for read r1
If this is a FASTQ file with integer (non-ASCII-encoded) qualities, please
re-run Bowtie with the --integer-quals option.
Command: bowtie-align --wrapper basic-0 -e 70 -l 28 -n 2 -S --12 t/data/bowtie/reads/e_coli.cb t/data/bowtie/indexes/e_coli /tmp/ILc9j2LRpw/aBsCFOfFVE.sam

STACK Bio::Tools::Run::WrapperBase::_run /build/bioperl-run-1.7.2/blib/lib/Bio/Tools/Run/WrapperBase/CommandExts.pm:1032
STACK Bio::Tools::Run::Bowtie::run /build/bioperl-run-1.7.2/blib/lib/Bio/Tools/Run/Bowtie.pm:358
STACK toplevel t/Bowtie.t:234
-------------------------------------

I think the issue occures since there is no such executable bowtie-align any more. The executables that are shipped with bowtie are named bowtie-align-l or bowtie-align-s. I personally have no idea which one is the right one to run the test.
Kind regards, Andreas.

Bio::Tools::Run::StandAloneBlastPlus "entrez_query" option


Author Name: Remi empty (Remi empty)
Original Redmine Issue: 3150, https://redmine.open-bio.org/issues/3150
Original Date: 2010-10-27
Original Assignee: Bioperl Guts


When running this code:

my $fac = Bio::Tools::Run::StandAloneBlastPlus->new(
-db_name => ‘nr’,
-remote => 1,
);

my $result = $fac->blastp(
-query => ‘NP_861128.fasta’,
-outfile => ‘query.bls’,
-method_args => [
-entrez_query => ‘txid2759[ORGN]’,
],
);

the option ‘-entrez_query’ doesn’t work.
I’ve looked to the code of Bio::Tools::Run::StandAloneBlastPlus and it seems that in the AUTOLOAD method, the options in -method_args are overwritten:

push @Args, (‘-method_args’ => [’remote’ => 1] ) if ($self>is_remote);

If I put the -entrez_query option directly in the AUTOLOAD method, it works.

push @Args, (‘-method_args’ => [(‘-remote’ => 1,entrez_query => ’txid2759[ORGN]’)] ) if ($self>is_remote);

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.