On Tue, Sep 25, 2012 at 8:39 PM, Peter Cock <p.j.a.cock@googlemail.com> wrote:
On Tuesday, September 25, 2012, Liisa Koski wrote:
Hello, I followed the instructions below to manually install the blast_datatypes:
Manual Installation ===================
Normally you would install this via the Galaxy ToolShed, which would move the provided blast.py file into a suitable location and process the datatypes_conf.xml entry to be combined with your local configuration.
However, if you really want to this should work for a manual install. Add the following line to the datatypes_conf.xml file in the Galaxy main folder:
<datatype extension="blastxml" type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml" display_in_upload="true"/>
Also create the file lib/galaxy/datatypes/blast.py by moving, copying or linking the blast.py file provided in this tar-ball. Finally add 'import blast' near the start of file lib/galaxy/datatypes/registry.py (after the other import lines).
=========================
I restarted my local Galaxy instance but still get this error.
WARNING:galaxy.datatypes.registry:Error appending sniffer for datatype 'galaxy.datatypes.xml:BlastXml' to sniff_order: 'module' object has no attribute 'BlastXml'
Any help would be much appreciated. Thanks, Liisa
The error message sounds like your XML file is using the old location of the BlastXml class (it used to be in an xml.py file, now it is in blast.py instead). Can you grep the XML file for Blast? (Use -I for case insensitive)
Sadly right now our Galaxy server is offline (suspected disk failure), so I may not be able to double check what is on our machine. I'll try to have a look at work tomorrow though.
My guess is you have this, with an out of date sniffer line from when BLAST+ was part of the main distribution: <datatype extension="blastxml" type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml" display_in_upload="true"/> <sniffer type="galaxy.datatypes.xml:BlastXml"/> And you should have: $ grep -i blast datatypes_conf.xml <datatype extension="blastxml" type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml" display_in_upload="true"/> <sniffer type="galaxy.datatypes.blast:BlastXml"/> Or, if you leave out the sniffer: $ grep -i blast datatypes_conf.xml <datatype extension="blastxml" type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml" display_in_upload="true"/> The sniffer is important to allow the user to upload BLAST XML files and have them automatically recognised as such. I see that I had not mentioned that in the tool's README file, an oversight I will fix in the next upload to the tool shed: https://bitbucket.org/peterjc/galaxy-central/changeset/5cefd5d5536ea9bc11021...
(Out of interest, was there a reason you didn't use the automatic install from the ToolShed?)
I should probably have also checked - are you running a recent version of Galaxy where the NCBI BLAST+ wrappers have been removed from the core distribution? Regards, Peter