Repository 'peptideshaker'
hg clone https://toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker

Changeset 2:fb591fc7241c (2013-06-20)
Previous changeset 1:7a74818e0eeb (2013-06-20) Next changeset 3:679a4b0041a4 (2013-06-20)
Commit message:
Improved some datatype handling
modified:
peptide_shaker.xml
added:
datatypes_conf.xml
dbtoolkit-4.2/LICENSE-2.0.txt
dbtoolkit-4.2/dbtoolkit-4.2.jar
dbtoolkit-4.2/lib/jargs-1.0.jar
dbtoolkit-4.2/lib/log4j-1.2.12.jar
dbtoolkit-4.2/lib/utilities-3.8.7.jar
peptideshaker.py
reverse.py
reverse.xml
removed:
galaxyp-toolshed-peptideshaker
b
diff -r 7a74818e0eeb -r fb591fc7241c datatypes_conf.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datatypes_conf.xml Thu Jun 20 11:02:36 2013 -0400
b
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<datatypes>
+  <datatype_files>
+    <datatype_file name="peptideshaker.py"/>
+  </datatype_files>
+  <registration>
+    <datatype extension="cps" type="galaxy.datatypes.peptideshaker:Cps" display_in_upload="true" />
+  </registration>
+</datatypes>
b
diff -r 7a74818e0eeb -r fb591fc7241c dbtoolkit-4.2/LICENSE-2.0.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dbtoolkit-4.2/LICENSE-2.0.txt Thu Jun 20 11:02:36 2013 -0400
[
b'@@ -0,0 +1,202 @@\n+\n+                                 Apache License\n+                           Version 2.0, January 2004\n+                        http://www.apache.org/licenses/\n+\n+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n+\n+   1. Definitions.\n+\n+      "License" shall mean the terms and conditions for use, reproduction,\n+      and distribution as defined by Sections 1 through 9 of this document.\n+\n+      "Licensor" shall mean the copyright owner or entity authorized by\n+      the copyright owner that is granting the License.\n+\n+      "Legal Entity" shall mean the union of the acting entity and all\n+      other entities that control, are controlled by, or are under common\n+      control with that entity. For the purposes of this definition,\n+      "control" means (i) the power, direct or indirect, to cause the\n+      direction or management of such entity, whether by contract or\n+      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n+      outstanding shares, or (iii) beneficial ownership of such entity.\n+\n+      "You" (or "Your") shall mean an individual or Legal Entity\n+      exercising permissions granted by this License.\n+\n+      "Source" form shall mean the preferred form for making modifications,\n+      including but not limited to software source code, documentation\n+      source, and configuration files.\n+\n+      "Object" form shall mean any form resulting from mechanical\n+      transformation or translation of a Source form, including but\n+      not limited to compiled object code, generated documentation,\n+      and conversions to other media types.\n+\n+      "Work" shall mean the work of authorship, whether in Source or\n+      Object form, made available under the License, as indicated by a\n+      copyright notice that is included in or attached to the work\n+      (an example is provided in the Appendix below).\n+\n+      "Derivative Works" shall mean any work, whether in Source or Object\n+      form, that is based on (or derived from) the Work and for which the\n+      editorial revisions, annotations, elaborations, or other modifications\n+      represent, as a whole, an original work of authorship. For the purposes\n+      of this License, Derivative Works shall not include works that remain\n+      separable from, or merely link (or bind by name) to the interfaces of,\n+      the Work and Derivative Works thereof.\n+\n+      "Contribution" shall mean any work of authorship, including\n+      the original version of the Work and any modifications or additions\n+      to that Work or Derivative Works thereof, that is intentionally\n+      submitted to Licensor for inclusion in the Work by the copyright owner\n+      or by an individual or Legal Entity authorized to submit on behalf of\n+      the copyright owner. For the purposes of this definition, "submitted"\n+      means any form of electronic, verbal, or written communication sent\n+      to the Licensor or its representatives, including but not limited to\n+      communication on electronic mailing lists, source code control systems,\n+      and issue tracking systems that are managed by, or on behalf of, the\n+      Licensor for the purpose of discussing and improving the Work, but\n+      excluding communication that is conspicuously marked or otherwise\n+      designated in writing by the copyright owner as "Not a Contribution."\n+\n+      "Contributor" shall mean Licensor and any individual or Legal Entity\n+      on behalf of whom a Contribution has been received by Licensor and\n+      subsequently incorporated within the Work.\n+\n+   2. Grant of Copyright License. Subject to the terms and conditions of\n+      this License, each Contributor hereby grants to You a perpetual,\n+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n+      copyright license to reproduce, prepare Derivative Works of,\n+      publicly display, publicly perform, sublicense, and distribute the\n+      Work and such Derivative Works in Source or Obj'..b'r shall be under the terms and conditions of\n+      this License, without any additional terms or conditions.\n+      Notwithstanding the above, nothing herein shall supersede or modify\n+      the terms of any separate license agreement you may have executed\n+      with Licensor regarding such Contributions.\n+\n+   6. Trademarks. This License does not grant permission to use the trade\n+      names, trademarks, service marks, or product names of the Licensor,\n+      except as required for reasonable and customary use in describing the\n+      origin of the Work and reproducing the content of the NOTICE file.\n+\n+   7. Disclaimer of Warranty. Unless required by applicable law or\n+      agreed to in writing, Licensor provides the Work (and each\n+      Contributor provides its Contributions) on an "AS IS" BASIS,\n+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n+      implied, including, without limitation, any warranties or conditions\n+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n+      PARTICULAR PURPOSE. You are solely responsible for determining the\n+      appropriateness of using or redistributing the Work and assume any\n+      risks associated with Your exercise of permissions under this License.\n+\n+   8. Limitation of Liability. In no event and under no legal theory,\n+      whether in tort (including negligence), contract, or otherwise,\n+      unless required by applicable law (such as deliberate and grossly\n+      negligent acts) or agreed to in writing, shall any Contributor be\n+      liable to You for damages, including any direct, indirect, special,\n+      incidental, or consequential damages of any character arising as a\n+      result of this License or out of the use or inability to use the\n+      Work (including but not limited to damages for loss of goodwill,\n+      work stoppage, computer failure or malfunction, or any and all\n+      other commercial damages or losses), even if such Contributor\n+      has been advised of the possibility of such damages.\n+\n+   9. Accepting Warranty or Additional Liability. While redistributing\n+      the Work or Derivative Works thereof, You may choose to offer,\n+      and charge a fee for, acceptance of support, warranty, indemnity,\n+      or other liability obligations and/or rights consistent with this\n+      License. However, in accepting such obligations, You may act only\n+      on Your own behalf and on Your sole responsibility, not on behalf\n+      of any other Contributor, and only if You agree to indemnify,\n+      defend, and hold each Contributor harmless for any liability\n+      incurred by, or claims asserted against, such Contributor by reason\n+      of your accepting any such warranty or additional liability.\n+\n+   END OF TERMS AND CONDITIONS\n+\n+   APPENDIX: How to apply the Apache License to your work.\n+\n+      To apply the Apache License to your work, attach the following\n+      boilerplate notice, with the fields enclosed by brackets "[]"\n+      replaced with your own identifying information. (Don\'t include\n+      the brackets!)  The text should be enclosed in the appropriate\n+      comment syntax for the file format. We also recommend that a\n+      file or class name and description of purpose be included on the\n+      same "printed page" as the copyright notice for easier\n+      identification within third-party archives.\n+\n+   Copyright [yyyy] [name of copyright owner]\n+\n+   Licensed under the Apache License, Version 2.0 (the "License");\n+   you may not use this file except in compliance with the License.\n+   You may obtain a copy of the License at\n+\n+       http://www.apache.org/licenses/LICENSE-2.0\n+\n+   Unless required by applicable law or agreed to in writing, software\n+   distributed under the License is distributed on an "AS IS" BASIS,\n+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n+   See the License for the specific language governing permissions and\n+   limitations under the License.\n'
b
diff -r 7a74818e0eeb -r fb591fc7241c dbtoolkit-4.2/dbtoolkit-4.2.jar
b
Binary file dbtoolkit-4.2/dbtoolkit-4.2.jar has changed
b
diff -r 7a74818e0eeb -r fb591fc7241c dbtoolkit-4.2/lib/jargs-1.0.jar
b
Binary file dbtoolkit-4.2/lib/jargs-1.0.jar has changed
b
diff -r 7a74818e0eeb -r fb591fc7241c dbtoolkit-4.2/lib/log4j-1.2.12.jar
b
Binary file dbtoolkit-4.2/lib/log4j-1.2.12.jar has changed
b
diff -r 7a74818e0eeb -r fb591fc7241c dbtoolkit-4.2/lib/utilities-3.8.7.jar
b
Binary file dbtoolkit-4.2/lib/utilities-3.8.7.jar has changed
b
diff -r 7a74818e0eeb -r fb591fc7241c galaxyp-toolshed-peptideshaker
--- a/galaxyp-toolshed-peptideshaker Thu Jun 20 10:53:16 2013 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
b'@@ -1,1488 +0,0 @@\n-<!DOCTYPE html>\n-<html lang="en">\n-<head>\n-  <meta http-equiv="X-UA-Compatible" content="IE=edge" />\n-  <meta charset="utf-8">\n-  <title>\n-  galaxyp / galaxyp-toolshed-peptideshaker   &mdash; Bitbucket\n-</title>\n-  <link rel="icon" type="image/png" href="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/img/favicon.png">\n-  <meta id="bb-canon-url" name="bb-canon-url" content="https://bitbucket.org">\n-  \n-  \n-<link rel="stylesheet" href="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/compressed/css/4c9fb96cff70.css" type="text/css" />\n-<link rel="stylesheet" href="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/compressed/css/8cc3605411c7.css" type="text/css" />\n-\n-  <!--[if lt IE 9]><link rel="stylesheet" href="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/css/aui/aui-ie.css" media="all"><![endif]-->\n-  <!--[if IE 9]><link rel="stylesheet" href="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/css/aui/aui-ie9.css" media="all"><![endif]-->\n-  <!--[if IE]><link rel="stylesheet" href="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/css/aui-overrides-ie.css" media="all"><![endif]-->\n-  <meta name="description" content="\n-  \n-    This repository contains Galaxy tools for running PeptideShaker (http://code.google.com/p/peptide-shaker/), an application for integrating proteomics identification data from multiple search engines.\n-  \n-"/>\n-  <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="Bitbucket" />\n-  \n-  \n-  <link href="/galaxyp/galaxyp-toolshed-peptideshaker/rss" rel="alternate nofollow" type="application/rss+xml" title="RSS feed for galaxyp-toolshed-peptideshaker" />\n-\n-  <meta name="twitter:card" content="summary"/>\n-  <meta name="twitter:site" content="@bitbucket"/>\n-  <meta name="og:type" content="bitbucket:hgrepository"/>\n-  <meta name="og:title" content="galaxyp / galaxyp-toolshed-peptideshaker"/>\n-  <meta name="og:url" content="https://bitbucket.org/galaxyp/galaxyp-toolshed-peptideshaker"/>\n-  \n-    <meta name="og:description" content="This repository contains Galaxy tools for running PeptideShaker (http://code.google.com/p/peptide-shaker/), an application for integrating proteomics identification data from multiple search engines."/>\n-  \n-  \n-    <meta name="og:image" content="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/img/language-avatars/default_128.png"/>\n-  \n-\n-  \n-    <script src="//cdn.optimizely.com/js/4079040.js"></script>\n-  \n-<script type="text/javascript">var NREUMQ=NREUMQ||[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script></head>\n-<body class="production "\n-      data-base-url="https://bitbucket.org"\n-      data-no-avatar-image="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/img/default_avatar/16/user_blue.png"\n-      data-current-user="{&quot;isKbdShortcutsEnabled&quot;: true, &quot;isSshEnabled&quot;: false, &quot;isAuthenticated&quot;: false}"\n-       data-current-repo="{&quot;scm&quot;: &quot;hg&quot;, &quot;language&quot;: &quot;&quot;, &quot;creator&quot;: {&quot;username&quot;: &quot;jmchilton&quot;}, &quot;id&quot;: 2238689, &quot;readOnly&quot;: false, &quot;owner&quot;: {&quot;username&quot;: &quot;galaxyp&quot;, &quot;isTeam&quot;: true}, &quot;pygmentsLanguage&quot;: null, &quot;slug&quot;: &quot;galaxyp-toolshed-peptideshaker&quot;}"\n-      \n-      \n-      \n-      \n-      >\n-<script type="text/javascript" src="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/compressed/js/e98deabf8a2e.js"></script>\n-<div id="page">\n-  <div id="wrapper">\n-    \n-    <header id="header" role="banner">\n-      \n-        \n-      \n-      <nav class="aui-header aui-dropdown2-trigger-group" role="navigation">\n-        <div class="aui-header-inner">\n-          <div class="aui-header-primary">\n-            <h1 class="aui-header-logo aui-header-logo-bitbucket logged-out">\n-              <a href="/" class="aui-nav-imagelink" id="logo-link">\n-                <span class="aui-header-logo-device">B'..b'-               data-support-gaq-page="HgDocumentation"\n-               href="http://mercurial.selenic.com/">Mercurial 2.2.2</a>\n-          </li>\n-          <li>\n-            <a class="support-ga" target="_blank"\n-               data-support-gaq-page="DjangoDocumentation"\n-               href="https://www.djangoproject.com/">Django 1.3.7</a>\n-          </li>\n-          <li>\n-            <a class="support-ga" target="_blank"\n-               data-support-gaq-page="PythonDocumentation"\n-               href="http://www.python.org/">Python 2.7.3</a>\n-          </li>\n-          <li>\n-            <a class="support-ga" target="_blank"\n-               data-support-gaq-page="DeployedVersion"\n-               href="#">8ebcbfbebde3 / 968d9745b7be @ bitbucket01</a>\n-          </li>\n-        </ul>\n-      </div>\n-      <ul class="atlassian-links">\n-        <li>\n-          <a id="atlassian-jira-link" target="_blank" title="Track everything \xe2\x80\x93 bugs, tasks, deadlines, \x03code \xe2\x80\x93 and pull reports to stay informed."\n-             href="http://www.atlassian.com/software/jira?utm_source=bitbucket&amp;utm_medium=link&amp;utm_campaign=bitbucket_footer">JIRA</a>\n-        </li>\n-        <li>\n-          <a id="atlassian-confluence-link" target="_blank" title="Content Creation, Collaboration & Knowledge Sharing for Teams."\n-             href="http://www.atlassian.com/software/confluence/overview/team-collaboration-software?utm_source=bitbucket&amp;utm_medium=link&amp;utm_campaign=bitbucket_footer">Confluence</a>\n-        </li>\n-        <li>\n-          <a id="atlassian-bamboo-link" target="_blank" title="Continuous integration and deployment, release management."\n-             href="http://www.atlassian.com/software/bamboo/overview?utm_source=bitbucket&amp;utm_medium=link&amp;utm_campaign=bitbucket_footer">Bamboo</a>\n-        </li>\n-        <li>\n-          <a id="atlassian-stash-link" target="_blank" title="Git repo management, behind your firewall and Enterprise-ready."\n-             href="http://www.atlassian.com/software/stash/overview?utm_source=bitbucket&amp;utm_medium=link&amp;utm_campaign=bitbucket_footer">Stash</a>\n-        </li>\n-        <li>\n-          <a id="atlassian-sourcetree-link" target="_blank" title="A free Git and Mercurial desktop client for Mac or Windows."\n-             href="http://www.sourcetreeapp.com/?utm_source=bitbucket&amp;utm_medium=link&amp;utm_campaign=bitbucket_footer">SourceTree</a>\n-        </li>\n-      </ul>\n-      <div id="footer-logo">\n-        <a target="_blank" title="Bitbucket is developed by Atlassian in San Francisco."\n-           href="http://www.atlassian.com?utm_source=bitbucket&amp;utm_medium=logo&amp;utm_campaign=bitbucket_footer">Atlassian</a>\n-      </div>\n-    </section>\n-  </footer>\n-  \n-</div>\n-\n-  \n-<script type="text/javascript" src="https://d3oaxc4q5k2d6q.cloudfront.net/m/968d9745b7be/compressed/js/61c7a95e7328.js"></script>\n-\n-<!-- This script exists purely for the benefit of our selenium tests -->\n-<script>\n-  setTimeout(function () {\n-    BB.JsLoaded = true;\n-  }, 3000);\n-</script>\n-\n-\n-\n-<script>\n-  (function () {\n-    var ga = document.createElement(\'script\');\n-    ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\';\n-    ga.setAttribute(\'async\', \'true\');\n-    document.documentElement.firstChild.appendChild(ga);\n-  }());\n-</script>\n-\n-\n-\n-  \n-\n-<script type="text/javascript">if(!NREUMQ.f){NREUMQ.f=function(){NREUMQ.push(["load",new Date().getTime()]);var e=document.createElement("script");e.type="text/javascript";e.src=(("http:"===document.location.protocol)?"http:":"https:")+"//"+"rpm-images.newrelic.com/42/eum/rum.js";document.body.appendChild(e);if(NREUMQ.a)NREUMQ.a();};NREUMQ.a=window.onload;window.onload=NREUMQ.f;};NREUMQ.push(["nrfj","beacon-1.newrelic.com","7d4a9813d0","295788","MgMDYhcHDUJVVEIKWAtJJ0MLBRdYW1kZAV4RBBRVDgMXH1VHRhAZFwMRWVdIFVhRQEVZWwQIBV8LAQ==",0,196,new Date().getTime(),"","","","",""]);</script></body>\n-</html>\n'
b
diff -r 7a74818e0eeb -r fb591fc7241c peptide_shaker.xml
--- a/peptide_shaker.xml Thu Jun 20 10:53:16 2013 -0400
+++ b/peptide_shaker.xml Thu Jun 20 11:02:36 2013 -0400
b
@@ -4,6 +4,9 @@
     Peform protein identification combining X! Tandem and OMSSA (using SearchGUI) and PeptideShaker pipeline.
   </description>
   <command>
+    #from datetime import datetime
+    #set $exp_str = "Galaxy Experiment %s" % datetime.now().strftime("%Y%m%d%H%M%s")              
+    #set $samp_str = "Sample %s" % datetime.now().strftime("%Y%m%d%H%M%s")
     mkdir spectra;
     mkdir output;
     mkdir output_reports;
@@ -45,8 +48,8 @@
     #end if
     -db $input_database;
     PeptideShakerCLI \
-    -experiment 'Galaxy Experiment' \
-    -sample 'Sample' \ 
+    -experiment '$exp_str' \
+    -sample '$samp_str' \ 
     -replicate 1 \
     -spectrum_files \$cwd/spectra \
     -identification_files \$cwd/output \ 
@@ -210,12 +213,14 @@
   <help>
 **What it does**
 
+Runs multiple search engines (X! Tandem and OMSSA) on any number of MGF peak lists using the SearchGUI application and combines the result via PeptideShaker.
+
 ------
 
 **Citation**
 
 For the underlying tool, please cite `TODO`
 
-If you use this tool in Galaxy, please cite TODO
+If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-peptideshaker
   </help>
 </tool>
b
diff -r 7a74818e0eeb -r fb591fc7241c peptideshaker.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/peptideshaker.py Thu Jun 20 11:02:36 2013 -0400
b
@@ -0,0 +1,8 @@
+from galaxy.datatypes.binary import Binary
+
+
+class Cps(Binary):
+    """Class describing a PeptideShaker CPS files"""
+    file_ext = "cps"
+
+Binary.register_unsniffable_binary_ext('cps')
b
diff -r 7a74818e0eeb -r fb591fc7241c reverse.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/reverse.py Thu Jun 20 11:02:36 2013 -0400
[
@@ -0,0 +1,50 @@
+from os.path import dirname, join, abspath
+import sys
+from optparse import OptionParser
+from ConfigParser import SafeConfigParser
+import subprocess
+
+DEBUG = False
+
+
+def main():
+    (options, args) = _parse_args()
+    format_args = (options.input, options.output)
+    _run_shell("cat '%s' > '%s'" % format_args)
+    _run_dbtoolkit("com.compomics.dbtoolkit.toolkit.ReverseFASTADB", "'%s' | head --lines -4 >> '%s'" % \
+                       format_args)
+
+
+def _run_shell(command):
+    if DEBUG:
+        print "Running shell command %s" % command
+    _exec(command)
+
+
+def _run_dbtoolkit(java_class, args):
+    command_prefix = "java -cp %s" % _dbtoolkit_jar_path()
+    _exec("%s %s %s" % (command_prefix, java_class, args))
+
+
+def _dbtoolkit_jar_path():
+    py_path = __file__
+    jar_path = join(dirname(py_path), "dbtoolkit-4.2", "dbtoolkit-4.2.jar")
+    return jar_path
+
+def _exec(command):
+    proc = subprocess.Popen(args=command, shell=True)
+    return_code = proc.wait()
+    if return_code != 0:
+        print "Error executing command [%s], return code is %d" % (command, return_code)
+        sys.exit(return_code)
+
+
+def _parse_args():
+    parser = OptionParser()
+    parser.add_option("-i", "--input")
+    parser.add_option("-o", "--output")
+    return parser.parse_args()
+
+
+if __name__ == "__main__":
+    main()
b
diff -r 7a74818e0eeb -r fb591fc7241c reverse.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/reverse.xml Thu Jun 20 11:02:36 2013 -0400
b
@@ -0,0 +1,32 @@
+<tool id="compomics_reverse" name="Create Target-Decoy Database" version="0.1.0">
+  <description>Creates a target-decoy database for use with Peptide Shaker</description>
+
+  <requirements>
+  </requirements>
+
+  <command interpreter="python">reverse.py --input='$input' --output='$output'</command>
+
+  <inputs>
+    <param format="fasta" name="input" type="data" label="FASTA Input" />
+  </inputs>
+
+  <outputs>
+    <data format="fasta" name="output" />
+  </outputs>
+
+  <help>
+**What it does**
+
+Given an input database, this tool will produce a target-decoy
+database in the format required by PeptideShaker using dbtoolkit.
+
+------
+
+**Citation**
+
+For the underlying tool, please cite `Martens et al. DBToolkit: processing protein databases for peptide-centric proteomics. Bioinformatics (2005) vol. 21 (17) pp. 3584-5`.
+
+If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-peptideshaker .
+
+  </help>
+</tool>