[Biopython-dev] Bio.EMBOSS wrappers

Peter biopython at maubp.freeserve.co.uk
Fri Apr 10 18:12:12 UTC 2009


Hi

Those of you following the CVS RSS feed will have noticed a lot of
activity on my new unit test test_Emboss.py, which now works on
Windows, Linux and Mac OS (provided EMBOSS is installed), and does
four main tasks:

- runs needle, checks Bio.AlignIO can parse the output
- runs water, checks Bio.AlignIO can parse the output
- runs seqret to check Bio.SeqIO
- runs seqret to check Bio.AlignIO

It would probably be logical to also include tests for the EMBOSS
version of primer3 here too, but I am not familiar with this tool and
the Biopython parsers.

For now I build the command line strings for seqret and needle "by
hand", as Bio.EMBOSS doesn't have wrappers for them yet.  I also note
that the existing wrappers in Bio.EMBOSS don't support the very handy
-auto and -filter command line arguments supported by all (or at least
most) of the EMBOSS command line tools.  Using -auto turns off any
user prompting for missing arguments (very important for calling from
a script).  Using -filter is useful for running the tools with pipes
(i.e. no output file is required as stdout can be used instead, and
potentially no input file if we write to stdin correctly).

Brad, seeing as Bio.EMBOSS is "your baby" how do you feel about adding
these features?  The needle wrapper would make an excellent basis for
a new water wrapper.  For adding -auto and -filter support, there is
probably a clever approach with a common EMBOSS specific subclass of
Bio.Application.AbstractCommandline, but I haven't tried.

Peter



More information about the Biopython-dev mailing list