comparison tools/blast2go/README.rst @ 8:e23b621eb7bb draft

Uploaded v0.0.9, embed citation, updated README
author peterjc
date Thu, 26 Mar 2015 11:15:22 -0400
parents
children 887adf823bc0
comparison
equal deleted inserted replaced
7:0ac3ef59ea93 8:e23b621eb7bb
1 Galaxy wrapper for Blast2GO for pipelines, b2g4pipe
2 ===================================================
3
4 This wrapper is copyright 2011-2014 by Peter Cock, The James Hutton Institute
5 (formerly SCRI, Scottish Crop Research Institute), UK. All rights reserved.
6 See the licence text below (MIT licence).
7
8 This is a wrapper for the command line Java tool b2g4pipe v2.5, Blast2GO for
9 pipelines, currently a free to use download available at:
10 http://www.blast2go.com/data/blast2go/b2g4pipe_v2.5.zip
11
12 Note that this has been superceded by a non-free "Blast2GO Command Line (CLI)":
13 http://www.blast2go.com/blast2gocli/
14
15 This wrapper is freely available from the Galaxy Tool Shed at:
16 http://toolshed.g2.bx.psu.edu/view/peterjc/blast2go
17
18
19 References
20 ==========
21
22 Peter Cock, Bjoern Gruening, Konrad Paszkiewicz and Leighton Pritchard (2013).
23 Galaxy tools and workflows for sequence analysis with applications
24 in molecular plant pathology. PeerJ 1:e167
25 http://dx.doi.org/10.7717/peerj.167
26
27 S. Geotz et al. (2008).
28 High-throughput functional annotation and data mining with the Blast2GO suite.
29 Nucleic Acids Res. 36(10):3420-3435.
30 http://dx.doi.org/10.1093/nar/gkn176
31
32 A. Conesa and S. Geotz (2008).
33 Blast2GO: A Comprehensive Suite for Functional Analysis in Plant Genomics.
34 International Journal of Plant Genomics. 619832.
35 http://dx.doi.org/10.1155/2008/619832
36
37 A. Conesa et al. (2005).
38 Blast2GO: A universal tool for annotation, visualization and analysis in functional genomics research.
39 Bioinformatics 21:3674-3676.
40 http://dx.doi.org/10.1093/bioinformatics/bti610
41
42 See also http://www.blast2go.com/
43
44
45 Automated Installation
46 ======================
47
48 Installation via the Galaxy Tool Shed should take care of the Galaxy side of
49 things, including the dependency on 'blast_datatypes' which defines the
50 'blastxml' file format. However, you will also probably need to configure
51 the Blast2GO property file(s), for example if you have a local Blast2GO
52 database (which we recommend for speed).
53
54
55 Manual Installation
56 ===================
57
58 The main dependency is b2g4pipe which must be installed manually. Also we
59 strongly recommend installing a local Blast2GO database as well (see the
60 intructions below about the ``blast2go.loc`` file). At the time of writing,
61 the last free version is b2g4pipe v2.5 which is available here:
62
63 * http://www.blast2go.com/data/blast2go/b2g4pipe_v2.5.zip
64
65 You can change the path by setting the B2G4PIPE environement variable to
66 the desired folder, but by default the script looks for the JAR file here::
67
68 /opt/b2g4pipe_v2.5/blast2go.jar
69
70 To install the wrapper manually, first install 'blast_datatypes', then
71 copy or move the following files under the Galaxy tools folder, e.g. in a
72 tools/blast2go/ folder:
73
74 * blast2go.xml (the Galaxy tool definition)
75 * blast2go.py (the Python wrapper script)
76 * massage_xml_for_blast2go.py (Python XML reformatting script)
77 * README.rst (this file)
78
79 For a manual installation of the wrapper you will also need to modify the
80 tools_conf.xml file to tell Galaxy to offer the tool. We suggest putting
81 it next to the NCBI BLAST+ wrappers. Just add the line::
82
83 <tool file="blast2go/blast2go.xml" />
84
85 If you wish to run the unit tests, also add this to tools_conf.xml.sample
86 and move/copy the test-data files under Galaxy's test-data folder. Then::
87
88 $ ./run_functional_tests.sh -id blast2go
89
90
91 Configuration
92 =============
93
94 As part of setting up b2g4pipe you will need to setup one or more Blast2GO
95 property files which tell the tool which database to use etc. The example
96 ``b2gPipe.properties`` provided with b2g4pipe is now out of date. The current
97 server IP address and database name may given on the Blast2GO website, or
98 can be found by running the latest GUI version via Java web-start, and
99 looking under the tools/options menu. These property files can be anywhere
100 accessable to the Galaxy Unix user, we put them with the JAR file etc.
101
102 You must tell Galaxy about these Blast2GO property files so that they can
103 be offered to the user. Copy file ``blast2go.loc.sample`` to
104 ``tool-data/blast2go.loc`` under the Galaxy folder and edit this to match
105 your installation. This must be plain text, tab separated, with three columns:
106
107 1. ID for the setup, e.g. ``Spain_2012_August``
108 2. Description for the setup, e.g. ``Database in Spain (August 2012)``
109 3. Properties filename for the setup, e.g. ``Spain_2012_August.properties``
110 relative to the main JAR file, or with a full path
111 e.g. ``/opt/b2g4pipe/Spain_2012_August.properties``
112
113 Avoid including "Blast2GO" in the description (column 2) as this text will be
114 included in the automatically assigned output dataset name. The ``blast2go.loc``
115 file allows you to customise the database setup. If for example you have a local
116 Blast2GO server running (which we recommend for speed), and you want this to be
117 the default setting, include it as the first line in your ``blast2go.loc`` file.
118
119 Consult the Blast2GO documentation for details about the property files and
120 setting up a local MySQL Blast2GO database. e.g.
121 https://www.blast2go.com/b2gsupport/resources/35-localb2gdb
122
123
124
125 History
126 =======
127
128 ======= ======================================================================
129 Version Changes
130 ------- ----------------------------------------------------------------------
131 v0.0.1 - Initial public release
132 v0.0.2 - Documentation clarifications, e.g. concatenated BLAST XML is allowed.
133 - Fixed error handler in wrapper script (for when b2g4pipe fails).
134 - Reformats the XML to use old NCBI-style concatenated BLAST XML since
135 b2g4pipe crashes with heap space error on with large files using
136 current NCBI output.
137 v0.0.3 - Include sample loc file, ``tool-data/blast2go.loc.sample``
138 v0.0.4 - Include ``repository_dependencies.xml`` file for ``blastxml`` format
139 (previously included in the core Galaxy installation)
140 v0.0.5 - Quote arguments in case of spaces in filenames (internal change)
141 - Last release supporting b2g4pipe v2.3.5
142 v0.0.6 - Support for b2g4pipe v2.5 instead of v2.3.5
143
144 - Now invoked with a class path and es.blast2go.prog.B2GAnnotPipe
145 rather then simply calling the jar file
146 - Now uses the switch ``-annot`` instead of ``-a`` (this change
147 breaks support for b2g4pipe v2.3.5 unfortunately)
148
149 - Catch a few error messages and treat them explicitly as errors.
150 v0.0.7 - Update output description in XML file (b2g4pipe v2.3.5 included
151 the sequence description, b2g4pipe v2.5 omits this).
152 v0.0.8 - Automated installation via the Galaxy Tool Shed.
153 - Added unit test.
154 - Explain how to load the tabular file into the Blast2GO GUI.
155 - Link to Tool Shed added to help text and this documentation.
156 - Switch to standard MIT licence.
157 - Use reStructuredText for this README file.
158 - Updated citation information (Cock et al. 2013).
159 - Development moved to GitHub, https://github.com/peterjc/galaxy_blast
160 - Split out ``massage_xml_for_blast2go.py`` as a standalone file.
161 v0.0.9 - Update README file now that BioBam are selling the latest version
162 of the Blast2GO command line tool. For now b2g4pipe v2.5 is still
163 available as a free download.
164 - Tool definition now embeds citation information.
165 ======= ======================================================================
166
167
168 Developers
169 ==========
170
171 This script and related tools were originally developed on the 'tools' branch
172 of the following BitBucket Mercurial repository:
173 https://bitbucket.org/peterjc/galaxy-central/
174
175 As of September 2013, development is continuing on a dedicated GitHub repository:
176 https://github.com/peterjc/galaxy_blast
177
178 For making the "Galaxy Tool Shed" http://toolshed.g2.bx.psu.edu/ tarball I use
179 the following command from the Galaxy root folder::
180
181 $ tar -czf blast2go.tar.gz tools/blast2go/README.rst tools/blast2go/blast2go.xml tools/blast2go/blast2go.py tools/blast2go/massage_xml_for_blast2go.py tools/blast2go/repository_dependencies.xml tools/blast2go/tool_dependencies.xml tool-data/blast2go.loc.sample test-data/blastp_sample.xml test-data/blastp_sample.blast2go.tabular
182
183 Check this worked::
184
185 $ tar -tzf blast2go.tar.gz
186 tools/blast2go/README.rst
187 tools/blast2go/blast2go.xml
188 tools/blast2go/blast2go.py
189 tools/blast2go/massage_xml_for_blast2go.py
190 tools/blast2go/repository_dependencies.xml
191 tools/blast2go/tool_dependencies.xml
192 tool-data/blast2go.loc.sample
193 test-data/blastp_sample.xml
194 test-data/blastp_sample.blast2go.tabular
195
196
197 Licence (MIT)
198 =============
199
200 Permission is hereby granted, free of charge, to any person obtaining a copy
201 of this software and associated documentation files (the "Software"), to deal
202 in the Software without restriction, including without limitation the rights
203 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
204 copies of the Software, and to permit persons to whom the Software is
205 furnished to do so, subject to the following conditions:
206
207 The above copyright notice and this permission notice shall be included in
208 all copies or substantial portions of the Software.
209
210 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
211 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
212 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
213 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
214 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
215 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
216 THE SOFTWARE.
217
218
219 NOTE: This is the licence for the Galaxy Wrapper only. Blast2GO and
220 associated data files are available and licenced separately.