Mercurial > repos > devteam > blast_datatypes
changeset 6:a04cf51612f1 draft
Uploaded v0.0.16, MIT License, development moved to GitHub, nucleotide database definition aware of MegaBLAST index superheader
author | peterjc |
---|---|
date | Mon, 23 Sep 2013 09:56:10 -0400 |
parents | b3a3ba0c1d47 |
children | 5ec5dece43cb |
files | README.rst blast.py blast_datatypes.txt |
diffstat | 3 files changed, 129 insertions(+), 112 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.rst Mon Sep 23 09:56:10 2013 -0400 @@ -0,0 +1,125 @@ +Galaxy datatypes for NCBI BLAST+ suite +====================================== + +These Galaxy datatypes are copyright 2010-2013 by Peter Cock, The James Hutton +Institute (formerly SCRI, Scottish Crop Research Institute), UK. All rights reserved. +Contributions/revisions copyright 2012 Edward Kirton. All rights reserved. +Contributions/revisions copyright 2013 Nicola Soranzo. All rights reserved. + +See the licence text below. + +Note that these files (and the associated BLAST+ wrappers) were originally +distributed as part of the main Galaxy repository, but as of August 2012 moved +to the Galaxy Tool Shed as 'blast_datatypes' (and 'ncbi_blast_plus' for the +wrappers). My thanks to Dannon Baker from the Galaxy development team for his +assistance with this. + + +History +======= + +These versions numbers initially matched those for 'ncbi_blast_plus', but are +not used explicitly in the datatypes themselves. + +======= ====================================================================== +Version Changes +------- ---------------------------------------------------------------------- +v0.0.11 - Final revision as part of the Galaxy main repository, and the + first release via the Tool Shed +v0.0.13 - Uses blast.py instead of xml.py to define the datatypes +v0.0.14 - Includes datatypes for protein and nucleotide BLAST databases + (based on work by Edward Kirton) +v0.0.15 - Fixes a MetadataElement bug and includes more of the optional + BLAST database files (contribution from Nicola Soranzo) +v0.0.16 - Adopt standard MIT License. + - Development moved to GitHub, https://github.com/peterjc/galaxy_blast + - Nucleotide database definition aware of MegaBLAST index superheader +======= ====================================================================== + + +Installation +============ + +Doing this automatically via the Galaxy Tool Shed is probably simplest. + + +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 lines 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"/> + <datatype extension="blastdbn" type="galaxy.datatypes.blast:BlastNucDb" mimetype="text/html" display_in_upload="false"/> + <datatype extension="blastdbp" type="galaxy.datatypes.blast:BlastProtDb" mimetype="text/html" display_in_upload="false"/> + +and later in the sniffer section:: + + <sniffer type="galaxy.datatypes.blast:BlastXml"/> + +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). + + +Bug Reports +=========== + +You can file an issue here https://github.com/peterjc/galaxy_blast/issues or ask +us on the Galaxy development list http://lists.bx.psu.edu/listinfo/galaxy-dev + + +Developers +========== + +BLAST+ datatypes and wrappers, and other tools were originally developed on the +following hg branch: http://bitbucket.org/peterjc/galaxy-central/src/tools + +As of July 2013, development is continuing on a dedicated GitHub repository: +https://github.com/peterjc/galaxy_blast + +For making the "Galaxy Tool Shed" http://toolshed.g2.bx.psu.edu/ tarball I use +the following command from the blast_datatypes folder:: + + $ tar -czf blast_datatypes.tar.gz README.rst datatypes_conf.xml blast.py + +Check this worked:: + + $ tar -tzf blast_datatypes.tar.gz + README.rst + datatypes_conf.xml + blast.py + +For development, rather than having a local ToolShed running, I currently +use a symlink from lib/galaxy/datatypes/blast.py to the actual file as +described above. + + +Licence (MIT) +============= + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +NOTE: This is the licence for the Galaxy BLAST datatypes **only**. BLAST+ +and associated data files are available and licenced separately.
--- a/blast.py Wed Mar 20 10:39:27 2013 -0400 +++ b/blast.py Mon Sep 23 09:56:10 2013 -0400 @@ -189,10 +189,13 @@ self.add_composite_file('blastdb.nog', is_binary=True, optional=True) # OID->GI lookup file ( -hash_index or -parse_seqids option of makeblastdb) self.add_composite_file('blastdb.nsd', is_binary=True, optional=True) # sorted sequence accession values ( -hash_index or -parse_seqids option of makeblastdb) self.add_composite_file('blastdb.nsi', is_binary=True, optional=True) # index of sequence accession values ( -hash_index or -parse_seqids option of makeblastdb) +# self.add_composite_file('blastdb.00.idx', is_binary=True, optional=True) # first volume of the MegaBLAST index generated by makembindex +# The previous line should be repeated for each index volume, with filename extensions like '.01.idx', '.02.idx', etc. + self.add_composite_file('blastdb.shd', is_binary=True, optional=True) # MegaBLAST index superheader (-old_style_index false option of makembindex) # self.add_composite_file('blastdb.naa', is_binary=True, optional=True) # index of a WriteDB column for e.g. mask data # self.add_composite_file('blastdb.nab', is_binary=True, optional=True) # data of a WriteDB column # self.add_composite_file('blastdb.nac', is_binary=True, optional=True) # multiple byte order for a WriteDB column -# The last 3 lines should be repeated for each WriteDB column, with filename extensions like ('.nba', '.nbb', '.nbc'), ('.nca', '.ncb', '.ncc'), etc. +# The previous 3 lines should be repeated for each WriteDB column, with filename extensions like ('.nba', '.nbb', '.nbc'), ('.nca', '.ncb', '.ncc'), etc. def display_data(self, trans, data, preview=False, filename=None, to_ext=None, size=None, offset=None, **kwd):
--- a/blast_datatypes.txt Wed Mar 20 10:39:27 2013 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,111 +0,0 @@ -Galaxy datatypes for NCBI BLAST+ suite -====================================== - -These Galaxy datatypes are copyright 2010-2013 by Peter Cock, The James Hutton -Institute (formerly SCRI, Scottish Crop Research Institute), UK. All rights reserved. -Contributions/revisions copyright 2012 Edward Kirton. All rights reserved. -Contributions/revisions copyright 2013 Nicola Soranzo. All rights reserved. - -See the licence text below. - -Note that these files (and the associated BLAST+ wrappers) were originally -distributed as part of the main Galaxy repository, but as of August 2012 moved -to the Galaxy Tool Shed as 'blast_datatypes' (and 'ncbi_blast_plus' for the -wrappers). My thanks to Dannon Baker from the Galaxy development team for his -assistance with this. - - -History -======= - -These versions numbers match those for 'ncbi_blast_plus', but are not used -explicitly in the datatypes themselves. - -v0.0.11 - Final revision as part of the Galaxy main repository, and the - first release via the Tool Shed -v0.0.13 - Uses blast.py instead of xml.py to define the datatypes -v0.0.14 - Includes datatypes for protein and nucleotide BLAST databases - (based on work by Edward Kirton) -v0.0.15 - Fixes a MetadataElement bug and includes more of the optional - BLAST database files (contribution from Nicola Soranzo) - - -Installation -============ - -Doing this automatically via the Galaxy Tool Shed is probably simplest. - - -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 lines 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"/> - <datatype extension="blastdbn" type="galaxy.datatypes.blast:BlastNucDb" mimetype="text/html" display_in_upload="false"/> - <datatype extension="blastdbp" type="galaxy.datatypes.blast:BlastProtDb" mimetype="text/html" display_in_upload="false"/> - -and later in the sniffer section: - - <sniffer type="galaxy.datatypes.blast:BlastXml"/> - -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). - - -Developers -========== - -BLAST+ datatypes and wrappers, and other tools are being developed on the -following hg branch: http://bitbucket.org/peterjc/galaxy-central/src/tools - -For making the "Galaxy Tool Shed" http://toolshed.g2.bx.psu.edu/ tarball I use -the following command from the Galaxy tools/ncbi_blast_plus folder: - -$ tar -czf blast_datatypes.tar.gz blast_datatypes.txt datatypes_conf.xml blast.py - -Check this worked: - -$ tar -tzf blast_datatypes.tar.gz -blast_datatypes.txt -datatypes_conf.xml -blast.py - -Note that the placement of these three files under tools/ncbi_blast_plus is -arbitrary - this just puts them next to the tool wrappers which use them. - -For development, rather than having a local ToolShed running, I currently -use a symlink from lib/galaxy/datatypes/blast.py to the actual file -tools/ncbi_blast_plus/blast.py as described above. - - -Licence (MIT/BSD style) -======================= - -Permission to use, copy, modify, and distribute this software and its -documentation with or without modifications and for any purpose and -without fee is hereby granted, provided that any copyright notices -appear in all copies and that both those copyright notices and this -permission notice appear in supporting documentation, and that the -names of the contributors or copyright holders not be used in -advertising or publicity pertaining to distribution of the software -without specific prior permission. - -THE CONTRIBUTORS AND COPYRIGHT HOLDERS OF THIS SOFTWARE DISCLAIM ALL -WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL THE -CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT -OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS -OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE -OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE -OR PERFORMANCE OF THIS SOFTWARE. - -NOTE: This is the licence for the Galaxy BLAST datatypes only. BLAST+ -and associated data files are available and licenced separately.