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.