protk 1.2.6.pre1 → 1.2.6.pre2

Sign up to get free protection for your applications and to get access to all the features.
@@ -19,6 +19,11 @@ include LibXML
19
19
  tool=Tool.new([:explicit_output])
20
20
  tool.option_parser.banner = "Convert a protXML file to a tab delimited table.\n\nUsage: protxml_to_table.rb [options] file1.protXML"
21
21
 
22
+ tool.options.groups=false
23
+ tool.option_parser.on("--groups","Print output by groups rather than for each protein") do
24
+ tool.options.groups=true
25
+ end
26
+
22
27
  # tool.options.proteinid_regex=".*?\|.*?\|(.*)"
23
28
  # tool.option_parser.on( '--regex rexpr', 'Regex' ) do |regex|
24
29
  # tool.options.proteinid_regex=regex
@@ -58,8 +63,10 @@ column_headers=[
58
63
  "num_peptides","confidence"
59
64
  ]
60
65
 
61
- output_fh.write "#{column_headers.join("\t")}\n"
66
+ groups_column_headers=["group_number","group_probability","members"]
62
67
 
68
+ output_fh.write "#{column_headers.join("\t")}\n" unless tool.groups
69
+ output_fh.write "#{groups_column_headers.join("\t")}\n" if tool.groups
63
70
 
64
71
  protein_groups=protxml_doc.find("//#{protxml_ns_prefix}protein_group", protxml_ns)
65
72
 
@@ -67,6 +74,8 @@ protein_groups.each do |protein_group|
67
74
 
68
75
  proteins=protein_group.find("./#{protxml_ns_prefix}protein", protxml_ns)
69
76
 
77
+ group_members=[]
78
+
70
79
  proteins.each do |protein|
71
80
 
72
81
  indis_proteins=protein.find("./#{protxml_ns_prefix}indistinguishable_protein", protxml_ns)
@@ -78,6 +87,8 @@ protein_groups.each do |protein_group|
78
87
  protein_id=protein.attributes['protein_name'].match(/.*?\|.*?\|(.*)/)[1]
79
88
  end
80
89
 
90
+ group_members<<protein.attributes['protein_name']
91
+
81
92
  column_values=[]
82
93
 
83
94
  column_values << protein_group.attributes['group_number']
@@ -91,9 +102,21 @@ protein_groups.each do |protein_group|
91
102
  column_values << protein.attributes['unique_stripped_peptides']
92
103
  column_values << protein.attributes['total_number_peptides']
93
104
  column_values << protein.attributes['confidence']
94
- output_fh.write(column_values.join("\t"))
95
- output_fh.write("\n")
96
105
 
106
+ unless tool.groups
107
+ output_fh.write(column_values.join("\t"))
108
+ output_fh.write("\n")
109
+ end
97
110
  end
111
+
112
+ group_column_values=[protein_group.attributes['group_number']]
113
+ group_column_values<<protein_group.attributes['probability']
114
+ group_column_values<<group_members.join(" ")
115
+
116
+ if tool.groups
117
+ output_fh.write(group_column_values.join("\t"))
118
+ output_fh.write("\n")
119
+ end
120
+
98
121
  end
99
122
 
data/bin/tandem_search.rb CHANGED
@@ -22,7 +22,7 @@ genv=Constants.new
22
22
  #
23
23
  search_tool=SearchTool.new([:background,:glyco,:database,:explicit_output,:over_write,
24
24
  :enzyme,:modifications,:mass_tolerance_units,:mass_tolerance,:strict_monoisotopic_mass,
25
- :missed_cleavages,:carbamidomethyl,:methionine_oxidation
25
+ :missed_cleavages,:cleavage_semi,:carbamidomethyl,:methionine_oxidation
26
26
  ])
27
27
  search_tool.jobid_prefix="x"
28
28
  search_tool.option_parser.banner = "Run an X!Tandem msms search on a set of mzML input files.\n\nUsage: tandem_search.rb [options] file1.mzML file2.mzML ..."
@@ -133,7 +133,7 @@ class Constants
133
133
  end
134
134
 
135
135
  def msgfplusjar
136
- return "#{self.msgfplus_root}/MSGFPlus.jar"
136
+ return %x[which MSGFPlus.jar]
137
137
  end
138
138
 
139
139
  def pwiz_root
@@ -236,7 +236,7 @@ class Constants
236
236
  @protk_dir=ENV['PROTK_INSTALL_DIR']
237
237
  end
238
238
 
239
- # Protk Defaults
239
+ # Load Protk Defaults
240
240
  #
241
241
  default_config_yml = YAML.load_file "#{File.dirname(__FILE__)}/data/default_config.yml"
242
242
  throw "Unable to read the config file at #{File.dirname(__FILE__)}/data/default_config.yml" unless default_config_yml!=nil
@@ -251,31 +251,31 @@ class Constants
251
251
  @env=default_config_yml
252
252
  end
253
253
 
254
- # Application installation directories. From environment variables
254
+ protk_tool_dirs=["tpp","omssa","openms","msgfplus","blast","pwiz","tandem"]
255
+
256
+ # Construct the PATH variable by prepending our preferred paths
255
257
  #
256
- protk_roots = [["tpp","xinteract"],["omssa","omssacl"],["blast","blastdbcmd"],["pwiz","msconvert"],["msgfplus",""],["openms","ExecutePipeline"]]
258
+ protk_paths=[]
257
259
 
258
- protk_roots.each do |r,binaryname|
259
- env_value = ENV["PROTK_#{r.upcase}_ROOT"]
260
+ # Add PATHs if PROTK_XXX_ROOT is defined
261
+ #
262
+ protk_tool_dirs.each do |tooldir|
263
+ env_value = ENV["PROTK_#{tooldir.upcase}_ROOT"]
260
264
  if ( env_value!=nil)
261
- # "FROMPATH" means detect the root value
262
- if env_value=="FROMPATH"
263
- bin_path=Pathname.new(%x[which #{binaryname}].chomp)
264
- if bin_path.exist?
265
- env_value=bin_path.realpath.dirname.to_s
266
- else
267
- env_value=""
268
- end
269
- end
270
- p "Using #{r} root #{env_value}"
271
- @env["#{r}_root"]=env_value
265
+ protk_paths<<env_value
272
266
  end
267
+ protk_paths<<"#{@protk_dir}/tools/#{tooldir}"
273
268
  end
269
+
270
+ original_path=ENV['PATH']
271
+ protk_paths<<original_path
272
+
273
+
274
+ ENV['PATH']=protk_paths.join(":")
275
+
274
276
 
275
277
  throw "No data found in config file" unless @env!=nil
276
278
  @info_level=default_config_yml['message_level']
277
-
278
-
279
279
 
280
280
  end
281
281
 
@@ -12,11 +12,4 @@ uniprot_sprot_annotation_database: swissprot_annotation
12
12
  uniprot_trembl_annotation_database: trembl_annotation
13
13
  galaxy_root: galaxy
14
14
  default_mascot_server: www.matrixscience.com
15
- tpp_root: tools/tpp
16
- omssa_root: tools/omssa
17
- openms_root: tools/openms
18
- msgfplus_root: tools/msgfplus
19
- blast_root: tools/blast
20
- pwiz_root: tools/pwiz
21
- tandem_root: tools/tandem
22
15
  log_file: Logs/protk.log
@@ -100,6 +100,13 @@ class SearchTool < Tool
100
100
  end
101
101
  end
102
102
 
103
+ if ( option_support.include? :cleavage_semi )
104
+ @options.cleavage_semi=true
105
+ @option_parser.on( '--no-cleavage-semi', 'Dont allow up to 1 non tryptic terminus on peptides' ) do
106
+ @options.cleavage_semi=false
107
+ end
108
+ end
109
+
103
110
  if ( option_support.include? :respect_precursor_charges )
104
111
  @options.respect_precursor_charges=false
105
112
  @option_parser.on( '-q', '--respect-charges','Dont respect charges in the input file. Instead impute them by trying various options') do
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: protk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.6.pre1
5
- prerelease: 6
4
+ version: 1.2.6.pre2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ira Cooke
@@ -14,151 +13,186 @@ dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: ftools
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '0.0'
20
+ - - '>='
20
21
  - !ruby/object:Gem::Version
21
22
  version: 0.0.0
22
23
  type: :runtime
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
26
  requirements:
27
- - - ! '>='
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '0.0'
30
+ - - '>='
28
31
  - !ruby/object:Gem::Version
29
32
  version: 0.0.0
30
33
  - !ruby/object:Gem::Dependency
31
34
  name: open4
32
35
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
36
  requirements:
35
- - - ! '>='
37
+ - - ~>
38
+ - !ruby/object:Gem::Version
39
+ version: '1.3'
40
+ - - '>='
36
41
  - !ruby/object:Gem::Version
37
42
  version: 1.3.0
38
43
  type: :runtime
39
44
  prerelease: false
40
45
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
46
  requirements:
43
- - - ! '>='
47
+ - - ~>
48
+ - !ruby/object:Gem::Version
49
+ version: '1.3'
50
+ - - '>='
44
51
  - !ruby/object:Gem::Version
45
52
  version: 1.3.0
46
53
  - !ruby/object:Gem::Dependency
47
54
  name: bio
48
55
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
56
  requirements:
51
- - - ! '>='
57
+ - - ~>
58
+ - !ruby/object:Gem::Version
59
+ version: '1.4'
60
+ - - '>='
52
61
  - !ruby/object:Gem::Version
53
62
  version: 1.4.3
54
63
  type: :runtime
55
64
  prerelease: false
56
65
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
66
  requirements:
59
- - - ! '>='
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: '1.4'
70
+ - - '>='
60
71
  - !ruby/object:Gem::Version
61
72
  version: 1.4.3
62
73
  - !ruby/object:Gem::Dependency
63
74
  name: rest-client
64
75
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
76
  requirements:
67
- - - ! '>='
77
+ - - ~>
78
+ - !ruby/object:Gem::Version
79
+ version: 1.6.7
80
+ - - '>='
68
81
  - !ruby/object:Gem::Version
69
82
  version: 1.6.7
70
83
  type: :runtime
71
84
  prerelease: false
72
85
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
86
  requirements:
75
- - - ! '>='
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 1.6.7
90
+ - - '>='
76
91
  - !ruby/object:Gem::Version
77
92
  version: 1.6.7
78
93
  - !ruby/object:Gem::Dependency
79
94
  name: net-ftp-list
80
95
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
96
  requirements:
83
- - - ! '>='
97
+ - - ~>
98
+ - !ruby/object:Gem::Version
99
+ version: 3.2.5
100
+ - - '>='
84
101
  - !ruby/object:Gem::Version
85
102
  version: 3.2.5
86
103
  type: :runtime
87
104
  prerelease: false
88
105
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
106
  requirements:
91
- - - ! '>='
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 3.2.5
110
+ - - '>='
92
111
  - !ruby/object:Gem::Version
93
112
  version: 3.2.5
94
113
  - !ruby/object:Gem::Dependency
95
114
  name: spreadsheet
96
115
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
116
  requirements:
99
- - - ! '>='
117
+ - - ~>
118
+ - !ruby/object:Gem::Version
119
+ version: 0.7.4
120
+ - - '>='
100
121
  - !ruby/object:Gem::Version
101
122
  version: 0.7.4
102
123
  type: :runtime
103
124
  prerelease: false
104
125
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
126
  requirements:
107
- - - ! '>='
127
+ - - ~>
128
+ - !ruby/object:Gem::Version
129
+ version: 0.7.4
130
+ - - '>='
108
131
  - !ruby/object:Gem::Version
109
132
  version: 0.7.4
110
133
  - !ruby/object:Gem::Dependency
111
134
  name: libxml-ruby
112
135
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
136
  requirements:
115
- - - ! '>='
137
+ - - ~>
116
138
  - !ruby/object:Gem::Version
117
- version: 2.3.3
139
+ version: '2.7'
140
+ - - '>='
141
+ - !ruby/object:Gem::Version
142
+ version: 2.7.0
118
143
  type: :runtime
119
144
  prerelease: false
120
145
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
146
  requirements:
123
- - - ! '>='
147
+ - - ~>
124
148
  - !ruby/object:Gem::Version
125
- version: 2.3.3
149
+ version: '2.7'
150
+ - - '>='
151
+ - !ruby/object:Gem::Version
152
+ version: 2.7.0
126
153
  - !ruby/object:Gem::Dependency
127
154
  name: mascot-dat
128
155
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
156
  requirements:
131
- - - ! '>='
157
+ - - ~>
158
+ - !ruby/object:Gem::Version
159
+ version: 0.3.1
160
+ - - '>='
132
161
  - !ruby/object:Gem::Version
133
162
  version: 0.3.1
134
163
  type: :runtime
135
164
  prerelease: false
136
165
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
166
  requirements:
139
- - - ! '>='
167
+ - - ~>
168
+ - !ruby/object:Gem::Version
169
+ version: 0.3.1
170
+ - - '>='
140
171
  - !ruby/object:Gem::Version
141
172
  version: 0.3.1
142
173
  - !ruby/object:Gem::Dependency
143
174
  name: bio-blastxmlparser
144
175
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
176
  requirements:
147
- - - ! '>='
177
+ - - ~>
178
+ - !ruby/object:Gem::Version
179
+ version: 1.1.1
180
+ - - '>='
148
181
  - !ruby/object:Gem::Version
149
182
  version: 1.1.1
150
183
  type: :runtime
151
184
  prerelease: false
152
185
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
186
  requirements:
155
- - - ! '>='
187
+ - - ~>
188
+ - !ruby/object:Gem::Version
189
+ version: 1.1.1
190
+ - - '>='
156
191
  - !ruby/object:Gem::Version
157
192
  version: 1.1.1
158
193
  - !ruby/object:Gem::Dependency
159
194
  name: rspec
160
195
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
196
  requirements:
163
197
  - - ~>
164
198
  - !ruby/object:Gem::Version
@@ -166,7 +200,6 @@ dependencies:
166
200
  type: :development
167
201
  prerelease: false
168
202
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
203
  requirements:
171
204
  - - ~>
172
205
  - !ruby/object:Gem::Version
@@ -211,37 +244,7 @@ extensions:
211
244
  - ext/protk/decoymaker/extconf.rb
212
245
  extra_rdoc_files: []
213
246
  files:
214
- - lib/protk/bio_sptr_extensions.rb
215
- - lib/protk/biotools_excel_converter.rb
216
- - lib/protk/command_runner.rb
217
- - lib/protk/constants.rb
218
- - lib/protk/convert_util.rb
219
- - lib/protk/data/make_uniprot_table.rb
220
- - lib/protk/eupathdb_gene_information_table.rb
221
- - lib/protk/fastadb.rb
222
- - lib/protk/galaxy_stager.rb
223
- - lib/protk/galaxy_util.rb
224
- - lib/protk/gapped_aligner.rb
225
- - lib/protk/manage_db_tool.rb
226
- - lib/protk/mascot_util.rb
227
- - lib/protk/omssa_util.rb
228
- - lib/protk/openms_defaults.rb
229
- - lib/protk/pepxml.rb
230
- - lib/protk/plasmodb.rb
231
- - lib/protk/prophet_tool.rb
232
- - lib/protk/protein_annotator.rb
233
- - lib/protk/protxml.rb
234
- - lib/protk/randomize.rb
235
- - lib/protk/search_tool.rb
236
- - lib/protk/setup_tool.rb
237
- - lib/protk/spreadsheet_extensions.rb
238
- - lib/protk/swissprot_database.rb
239
- - lib/protk/tool.rb
240
- - lib/protk/uniprot_mapper.rb
241
- - lib/protk/xtandem_defaults.rb
242
- - lib/protk.rb
243
- - lib/protk/manage_db_rakefile.rake
244
- - lib/protk/setup_rakefile.rake
247
+ - README.md
245
248
  - bin/add_retention_times.rb
246
249
  - bin/annotate_ids.rb
247
250
  - bin/asapratio.rb
@@ -256,7 +259,6 @@ files:
256
259
  - bin/libra.rb
257
260
  - bin/make_decoy.rb
258
261
  - bin/manage_db.rb
259
- - bin/mascot2xml.rb
260
262
  - bin/mascot_search.rb
261
263
  - bin/mascot_to_pepxml.rb
262
264
  - bin/msgfplus_search.rb
@@ -276,20 +278,27 @@ files:
276
278
  - bin/uniprot_mapper.rb
277
279
  - bin/xls_to_table.rb
278
280
  - bin/xpress.rb
279
- - README.md
280
- - lib/protk/data/apt-get_packages.yaml
281
- - lib/protk/data/brew_packages.yaml
282
- - lib/protk/data/default_config.yml
281
+ - ext/protk/decoymaker/decoymaker.c
282
+ - ext/protk/decoymaker/extconf.rb
283
+ - ext/protk/simplealign/extconf.rb
284
+ - lib/protk.rb
285
+ - lib/protk/bio_sptr_extensions.rb
286
+ - lib/protk/biotools_excel_converter.rb
287
+ - lib/protk/command_runner.rb
288
+ - lib/protk/constants.rb
289
+ - lib/protk/convert_util.rb
283
290
  - lib/protk/data/ExecutePipeline.trf
284
291
  - lib/protk/data/FeatureFinderCentroided.ini
285
292
  - lib/protk/data/FeatureFinderIsotopeWavelet.ini
293
+ - lib/protk/data/apt-get_packages.yaml
294
+ - lib/protk/data/brew_packages.yaml
295
+ - lib/protk/data/default_config.yml
286
296
  - lib/protk/data/galaxyenv.sh
287
- - lib/protk/data/pepxml_mascot_template.xml
297
+ - lib/protk/data/make_uniprot_table.rb
288
298
  - lib/protk/data/predefined_db.crap.yaml
289
299
  - lib/protk/data/predefined_db.sphuman.yaml
290
300
  - lib/protk/data/predefined_db.swissprot_annotation.yaml
291
301
  - lib/protk/data/predefined_db.swissprot_fasta_annotation.yaml
292
- - lib/protk/data/predefined_db.trembl_annotation.yaml
293
302
  - lib/protk/data/tandem_params.xml
294
303
  - lib/protk/data/taxonomy_template.xml
295
304
  - lib/protk/data/unimod.xml
@@ -297,34 +306,53 @@ files:
297
306
  - lib/protk/data/uniprot_accessions_table.txt
298
307
  - lib/protk/data/uniprot_input_accessions.loc
299
308
  - lib/protk/data/yum_packages.yaml
300
- - ext/protk/decoymaker/decoymaker.c
301
- - ext/protk/simplealign/simplealign.c
302
- - ext/protk/decoymaker/extconf.rb
303
- - ext/protk/simplealign/extconf.rb
309
+ - lib/protk/eupathdb_gene_information_table.rb
310
+ - lib/protk/fastadb.rb
311
+ - lib/protk/galaxy_stager.rb
312
+ - lib/protk/galaxy_util.rb
313
+ - lib/protk/gapped_aligner.rb
314
+ - lib/protk/manage_db_rakefile.rake
315
+ - lib/protk/manage_db_tool.rb
316
+ - lib/protk/mascot_util.rb
317
+ - lib/protk/omssa_util.rb
318
+ - lib/protk/openms_defaults.rb
319
+ - lib/protk/pepxml.rb
320
+ - lib/protk/plasmodb.rb
321
+ - lib/protk/prophet_tool.rb
322
+ - lib/protk/protein_annotator.rb
323
+ - lib/protk/protxml.rb
324
+ - lib/protk/randomize.rb
325
+ - lib/protk/search_tool.rb
326
+ - lib/protk/setup_rakefile.rake
327
+ - lib/protk/setup_tool.rb
328
+ - lib/protk/spreadsheet_extensions.rb
329
+ - lib/protk/swissprot_database.rb
330
+ - lib/protk/tool.rb
331
+ - lib/protk/uniprot_mapper.rb
332
+ - lib/protk/xtandem_defaults.rb
304
333
  homepage: http://rubygems.org/gems/protk
305
334
  licenses: []
335
+ metadata: {}
306
336
  post_install_message: Now run protk_setup.rb to install third party tools and manage_db.rb
307
337
  to install databases.
308
338
  rdoc_options: []
309
339
  require_paths:
310
340
  - lib
311
341
  required_ruby_version: !ruby/object:Gem::Requirement
312
- none: false
313
342
  requirements:
314
- - - ! '>='
343
+ - - '>='
315
344
  - !ruby/object:Gem::Version
316
345
  version: '0'
317
346
  required_rubygems_version: !ruby/object:Gem::Requirement
318
- none: false
319
347
  requirements:
320
- - - ! '>'
348
+ - - '>'
321
349
  - !ruby/object:Gem::Version
322
350
  version: 1.3.1
323
351
  requirements: []
324
352
  rubyforge_project:
325
- rubygems_version: 1.8.24
353
+ rubygems_version: 2.2.1
326
354
  signing_key:
327
- specification_version: 3
355
+ specification_version: 4
328
356
  summary: Proteomics Toolkit
329
357
  test_files: []
330
358
  has_rdoc: