miga-base 0.3.7.0 → 0.3.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 38acfea63f14c8cca837d84fbca92fa70d134e76
4
- data.tar.gz: 6c6f955e4ba5c3a90ead50a3ac38896df4febcf1
2
+ SHA256:
3
+ metadata.gz: aeb46208fbfdb522754876da59589895784fb72de06afdded9000066f34c569d
4
+ data.tar.gz: 61d2afe7e630ebc4635b38f3ee72ba89e7faebfaec502f130bb9bcadc970b951
5
5
  SHA512:
6
- metadata.gz: d4303872589a4d02f75d392957dfbcc06f5d3e1f78107a521833f98c3d11b155dbb16bb386e1ab50723d2cb12bcd2bba77ab87033c6a7916f49ce68ce59b4941
7
- data.tar.gz: 05134a38b3082e0a5982beb5f23d2a882ce4bba23c34cda1d81bd697288ac841861b6f2a07eeeafe691fed53816125f3de3fd75bf9a7fbea3d49a5975558cb3f
6
+ metadata.gz: 7ce52a87fa8f5fa8609546b6d98d9f8e49c139ad8894f45954cede0b3ce2dea7a7035dbdf308a0fb0478ea630e51d86476cc67102182091151e21fc6e6c698f3
7
+ data.tar.gz: e108be9b315fe8315278e2ff22fbf86e3896c01e132dedb0f0e2183e0415626beece1ea4d82318b5365b4b84a60294a9728171ef37efff2650b8f39c062f28cc
data/actions/init.rb CHANGED
@@ -3,41 +3,44 @@
3
3
  # @package MiGA
4
4
  # @license Artistic-2.0
5
5
 
6
- require "shellwords"
6
+ require 'shellwords'
7
7
 
8
- o = {q:true, mytaxa:nil, config:File.expand_path(".miga_modules", ENV["HOME"]),
9
- ask: false, auto:false, dtype: "bash"}
8
+ o = {q: true, mytaxa: nil,
9
+ config: File.expand_path('.miga_modules', ENV['HOME']),
10
+ ask: false, auto: false, dtype: 'bash'}
10
11
  OptionParser.new do |opt|
11
12
  opt_banner(opt)
12
- opt.on("-c","--config PATH",
13
- "Path to the Bash configuration file.",
13
+ opt.on('-c', '--config PATH',
14
+ 'Path to the Bash configuration file.',
14
15
  "By default: #{o[:config]}."){ |v| o[:config] = v }
15
- opt.on("--[no-]mytaxa",
16
- "Should I try setting up MyTaxa? By default: interactive."
16
+ opt.on('--[no-]mytaxa',
17
+ 'Should I try setting up MyTaxa its dependencies?',
18
+ 'By default: interactive (true if --auto).'
17
19
  ){ |v| o[:mytaxa] = v }
18
- opt.on("--daemon-type STRING",
19
- "Type of daemon launcher, one of: bash, qsub, msub.",
20
- "By default: #{o[:dtype]}."){ |v| o[:dtype]=v }
21
- opt.on("--ask-all", "If set, asks for the location of all software.",
22
- "By default, only the locations missing in PATH are requested"
20
+ opt.on('--daemon-type STRING',
21
+ 'Type of daemon launcher, one of: bash, qsub, msub, slurm.',
22
+ "By default: interactive (#{o[:dtype]} if --auto)."
23
+ ){ |v| o[:dtype]=v }
24
+ opt.on('--ask-all', 'If set, asks for the location of all software.',
25
+ 'By default, only the locations missing in PATH are requested.'
23
26
  ){ |v| o[:ask] = v }
24
- opt.on("--auto", "If set, accepts all defaults as answers."
27
+ opt.on('--auto', 'If set, accepts all defaults as answers.'
25
28
  ){ |v| o[:auto] = v }
26
29
  opt_common(opt, o)
27
30
  end.parse!
28
31
  $auto_answer = o[:auto]
29
32
 
30
- def ask_user(q, d=nil, ans=nil, force=false)
33
+ def ask_user(q, d = nil, ans = nil, force = false)
31
34
  $stderr.print "#{q}#{" (#{ans.join(" / ")})" unless ans.nil?}" +
32
35
  "#{" [#{d}]" unless d.nil?} > "
33
36
  if $auto_answer and not force
34
- $stderr.puts ""
37
+ $stderr.puts ''
35
38
  else
36
39
  o = gets.chomp
37
40
  end
38
41
  o = d if o.nil? or o.empty?
39
42
  unless ans.nil? or ans.include? o
40
- $stderr.puts "Answer not recognized."
43
+ $stderr.puts 'Answer not recognized.'
41
44
  return ask_user(q, d, ans)
42
45
  end
43
46
  o
@@ -55,23 +58,23 @@ make sure you have all the requirements for MiGA data processing.
55
58
  BANNER
56
59
 
57
60
  if ask_user(
58
- "Would you like to see all the requirements before starting?",
59
- "no", %w(yes no)) == "yes"
60
- File.open(File.expand_path("utils/requirements.txt", miga), "r") do |fh|
61
+ 'Would you like to see all the requirements before starting?',
62
+ 'no', %w(yes no)) == 'yes'
63
+ File.open(File.expand_path('utils/requirements.txt', miga), 'r') do |fh|
61
64
  fh.each_line{ |ln| $stderr.puts ln }
62
65
  end
63
66
  end
64
67
 
65
- rc_path = File.expand_path(".miga_rc", ENV["HOME"])
68
+ rc_path = File.expand_path('.miga_rc', ENV['HOME'])
66
69
  if File.exist? rc_path
67
70
  if ask_user(
68
- "I found a previous configuration. Do you want to continue?",
69
- "yes", %w(yes no))=="no"
70
- $stderr.puts "OK, see you soon!"
71
+ 'I found a previous configuration. Do you want to continue?',
72
+ 'yes', %w(yes no)) == 'no'
73
+ $stderr.puts 'OK, see you soon!'
71
74
  exit 0
72
75
  end
73
76
  end
74
- rc_fh = File.open(rc_path, "w")
77
+ rc_fh = File.open(rc_path, 'w')
75
78
  rc_fh.puts <<BASH
76
79
  #!/bin/bash
77
80
  # `miga init` made this on #{Time.now}
@@ -81,25 +84,26 @@ BASH
81
84
  # Check bash configuration file
82
85
  unless File.exist? o[:config]
83
86
  o[:config] = ask_user(
84
- "Is there a script I need to load at startup?", o[:config])
87
+ 'Is there a script I need to load at startup?', o[:config])
85
88
  end
86
89
  if File.exist? o[:config]
87
90
  o[:config] = File.expand_path o[:config]
88
91
  $stderr.puts "Found bash configuration script: #{o[:config]}."
89
92
  rc_fh.puts "MIGA_STARTUP='#{o[:config]}'"
90
- rc_fh.puts ". \"$MIGA_STARTUP\""
93
+ rc_fh.puts '. "$MIGA_STARTUP"'
91
94
  end
92
- $stderr.puts ""
95
+ $stderr.puts ''
93
96
 
94
97
  # Check for software requirements
95
- $stderr.puts "Looking for requirements:"
98
+ $stderr.puts 'Looking for requirements:'
96
99
  if o[:mytaxa].nil?
97
100
  o[:mytaxa] = ask_user(
98
- "Should I include MyTaxa modules?","yes",%w(yes no))=="yes"
101
+ 'Should I include MyTaxa modules?', 'yes', %w(yes no)) == 'yes'
99
102
  end
100
- rc_fh.puts "export MIGA_MYTAXA=\"no\"" unless o[:mytaxa]
103
+ rc_fh.puts 'export MIGA_MYTAXA="no"' unless o[:mytaxa]
101
104
  paths = {}
102
- File.open(File.expand_path("utils/requirements.txt", miga), "r") do |fh|
105
+ rc_fh.puts 'MIGA_PATH=""'
106
+ File.open(File.expand_path('utils/requirements.txt', miga), 'r') do |fh|
103
107
  fh.each_line do |ln|
104
108
  next if $. < 3
105
109
  r = ln.chomp.split(/\t+/)
@@ -112,8 +116,8 @@ File.open(File.expand_path("utils/requirements.txt", miga), "r") do |fh|
112
116
  else
113
117
  d_path = File.dirname(`which "#{r[1]}"`)
114
118
  end
115
- if o[:ask] or d_path=="."
116
- path = ask_user("Where can I find it?", d_path, nil, true)
119
+ if o[:ask] or d_path == '.'
120
+ path = ask_user('Where can I find it?', d_path, nil, true)
117
121
  else
118
122
  path = d_path
119
123
  $stderr.puts path
@@ -129,104 +133,130 @@ File.open(File.expand_path("utils/requirements.txt", miga), "r") do |fh|
129
133
  paths[r[1]] = File.expand_path(r[1], path).shellescape
130
134
  end
131
135
  end
132
- rc_fh.puts "export PATH=\"$MIGA_PATH$PATH\""
133
- $stderr.puts ""
136
+ rc_fh.puts 'export PATH="$MIGA_PATH$PATH"'
137
+ $stderr.puts ''
134
138
 
135
139
  # Check for other files
136
140
  if o[:mytaxa]
137
- $stderr.puts "Looking for MyTaxa databases:"
141
+ $stderr.puts 'Looking for MyTaxa databases:'
138
142
  mt = File.dirname paths["MyTaxa"]
139
- $stderr.print "Looking for scores... "
140
- unless Dir.exist? File.expand_path("db", mt)
141
- $stderr.puts "no.\nExecute 'python #{mt}/utils/download_db.py'."
143
+ $stderr.print 'Looking for scores... '
144
+ unless Dir.exist? File.expand_path('db', mt)
145
+ $stderr.puts "no.\nExecute 'python2 #{mt}/utils/download_db.py'."
142
146
  exit 1
143
147
  end
144
- $stderr.puts "yes."
145
- $stderr.print "Looking for diamond db... "
146
- unless File.exist? File.expand_path("AllGenomes.faa.dmnd", mt)
148
+ $stderr.puts 'yes.'
149
+ $stderr.print 'Looking for diamond db... '
150
+ unless File.exist? File.expand_path('AllGenomes.faa.dmnd', mt)
147
151
  $stderr.puts "no.\nDownload " +
148
152
  "'http://enve-omics.ce.gatech.edu/data/public_mytaxa/" +
149
153
  "AllGenomes.faa.dmnd' into #{mt}."
150
154
  exit 1
151
155
  end
152
- $stderr.puts ""
156
+ $stderr.puts ''
153
157
  end
154
158
 
155
159
  # Check for R packages
156
- $stderr.puts "Looking for R packages:"
160
+ $stderr.puts 'Looking for R packages:'
157
161
  %w(enveomics.R ape cluster vegan).each do |pkg|
158
162
  $stderr.print "Testing #{pkg}... "
159
163
  `echo "library('#{pkg}')" | #{paths["R"].shellescape} --vanilla -q 2>&1`
160
164
  if $?.success?
161
- $stderr.puts "yes."
165
+ $stderr.puts 'yes.'
162
166
  else
163
- $stderr.puts "no, installing."
164
- $stderr.print "" +
167
+ $stderr.puts 'no, installing.'
168
+ $stderr.print '' +
165
169
  `echo "install.packages('#{pkg}', repos='http://cran.rstudio.com/')" \
166
170
  | #{paths["R"].shellescape} --vanilla -q 2>&1`
167
171
  `echo "library('#{pkg}')" | #{paths["R"].shellescape} --vanilla -q 2>&1`
168
172
  raise "Unable to auto-install R package #{pkg}." unless $?.success?
169
173
  end
170
174
  end
171
- $stderr.puts ""
175
+ $stderr.puts ''
172
176
 
173
177
  # Check for Ruby gems
174
- $stderr.puts "Looking for Ruby gems:"
178
+ $stderr.puts 'Looking for Ruby gems:'
175
179
  %w(sqlite3 daemons json).each do |pkg|
176
180
  $stderr.print "Testing #{pkg}... "
177
181
  `#{paths["ruby"].shellescape} -r "#{pkg}" -e "" 2>/dev/null`
178
182
  if $?.success?
179
- $stderr.puts "yes."
183
+ $stderr.puts 'yes.'
180
184
  else
181
- $stderr.puts "no, installing."
185
+ $stderr.puts 'no, installing.'
182
186
  # This hackey mess is meant to ensure the test and installation are done
183
187
  # on the configuration Ruby, not on the Ruby currently executing the init
184
188
  # action
185
- $stderr.print `#{paths["ruby"].shellescape} \
189
+ $stderr.print `#{paths['ruby'].shellescape} \
186
190
  -r rubygems -r rubygems/gem_runner \
187
191
  -e "Gem::GemRunner.new.run %w(install --user #{pkg})" 2>&1`
188
192
  raise "Unable to auto-install Ruby gem #{pkg}." unless $?.success?
189
193
  end
190
194
  end
191
- $stderr.puts ""
195
+ $stderr.puts ''
192
196
 
193
197
  # Configure daemon
194
- $stderr.puts "Default daemon configuration:"
195
- daemon_f = File.expand_path(".miga_daemon.json", ENV["HOME"])
198
+ $stderr.puts 'Default daemon configuration:'
199
+ daemon_f = File.expand_path('.miga_daemon.json', ENV['HOME'])
196
200
  unless File.exist?(daemon_f) and ask_user(
197
- "A template daemon already exists, do you want to preserve it?",
198
- "yes", %w(yes no))=="yes"
201
+ 'A template daemon already exists, do you want to preserve it?',
202
+ 'yes', %w(yes no)) == 'yes'
199
203
  v = {created:Time.now.to_s, updated:Time.now.to_s}
200
- v[:type] = ask_user("Please select the type of daemon you want to setup",
201
- o[:dtype], %w(bash qsub msub))
204
+ v[:type] = ask_user('Please select the type of daemon you want to setup',
205
+ o[:dtype], %w(bash qsub msub slurm))
202
206
  case v[:type]
203
- when "bash"
204
- v[:latency] = ask_user("How long should I sleep? (in seconds)","30").to_i
205
- v[:maxjobs] = ask_user("How many jobs can I launch at once?", "6").to_i
206
- v[:ppn] = ask_user("How many CPUs can I use per job?", "2").to_i
207
- $stderr.puts "Setting up internal daemon defaults."
208
- $stderr.puts "If you don't understand this just leave default values:"
209
- v[:cmd] = ask_user(
207
+ when 'bash'
208
+ v[:latency] = ask_user('How long should I sleep? (in seconds)', '30').to_i
209
+ v[:maxjobs] = ask_user('How many jobs can I launch at once?', '6').to_i
210
+ v[:ppn] = ask_user('How many CPUs can I use per job?', '2').to_i
211
+ $stderr.puts 'Setting up internal daemon defaults.'
212
+ $stderr.puts 'If you don\'t understand this just leave default values:'
213
+ v[:cmd] = ask_user(
210
214
  "How should I launch tasks?\n %1$s: script path, %2$s: variables, " +
211
215
  "%3$d: CPUs, %4$s: log file, %5$s: task name.\n",
212
216
  "%2$s '%1$s' > '%4$s' 2>&1")
213
- v[:var] = ask_user(
217
+ v[:var] = ask_user(
214
218
  "How should I pass variables?\n %1$s: keys, %2$s: values.\n",
215
219
  "%1$s=%2$s")
216
- v[:varsep] = ask_user("What should I use to separate variables?", " ")
217
- v[:alive] = ask_user(
220
+ v[:varsep] = ask_user('What should I use to separate variables?', ' ')
221
+ v[:alive] = ask_user(
218
222
  "How can I know that a process is still alive?\n %1$s: PID, " +
219
223
  "output should be 1 for running and 0 for non-running.\n",
220
224
  "ps -p '%1$s'|tail -n+2|wc -l")
221
225
  v[:kill] = ask_user(
222
226
  "How should I terminate tasks?\n %s: process ID.", "kill -9 '%s'")
227
+ when 'slurm'
228
+ queue = ask_user('What queue should I use?', nil, nil, true)
229
+ v[:latency] = ask_user(
230
+ 'How long should I sleep? (in seconds)', '150').to_i
231
+ v[:maxjobs] = ask_user('How many jobs can I launch at once?', '300').to_i
232
+ v[:ppn] = ask_user('How many CPUs can I use per job?', '4').to_i
233
+ $stderr.puts 'Setting up internal daemon defaults.'
234
+ $stderr.puts 'If you don\'t understand this just leave default values:'
235
+ v[:cmd] = ask_user(
236
+ "How should I launch tasks?\n %1$s: script path, %2$s: variables, " +
237
+ "%3$d: CPUs, %4$d: log file, %5$s: task name.\n",
238
+ "%2$s sbatch --partition='#{queue}' --export=ALL " +
239
+ "--nodes=1 --ntasks-per-node=%3$d --output='%4$s' --job-name='%5$s' " +
240
+ "--mem=9G --time=12:00:00 %1$s | perl -pe 's/.* //'")
241
+ v[:var] = ask_user(
242
+ "How should I pass variables?\n %1$s: keys, %2$s: values.\n",
243
+ "%1$s=%2$s")
244
+ v[:varsep] = ask_user('What should I use to separate variables?', ' ')
245
+ v[:alive] = ask_user(
246
+ "How can I know that a process is still alive?\n %1$s: job id, " +
247
+ "output should be 1 for running and 0 for non-running.\n",
248
+ "squeue -h -o %t -j '%1$s' | grep '^PD\|R\|CF\|CG$' " +
249
+ "| tail -n 1 | wc -l")
250
+ v[:kill] = ask_user(
251
+ "How should I terminate tasks?\n %s: process ID.", "scancel '%s'")
223
252
  else # [qm]sub
224
- queue = ask_user("What queue should I use?", nil, nil, true)
225
- v[:latency] = ask_user("How long should I sleep? (in seconds)","150").to_i
226
- v[:maxjobs] = ask_user("How many jobs can I launch at once?", "300").to_i
227
- v[:ppn] = ask_user("How many CPUs can I use per job?", "4").to_i
228
- $stderr.puts "Setting up internal daemon defaults."
229
- $stderr.puts "If you don't understand this just leave default values:"
253
+ queue = ask_user('What queue should I use?', nil, nil, true)
254
+ v[:latency] = ask_user(
255
+ 'How long should I sleep? (in seconds)', '150').to_i
256
+ v[:maxjobs] = ask_user('How many jobs can I launch at once?', '300').to_i
257
+ v[:ppn] = ask_user('How many CPUs can I use per job?', '4').to_i
258
+ $stderr.puts 'Setting up internal daemon defaults.'
259
+ $stderr.puts 'If you don\'t understand this just leave default values:'
230
260
  v[:cmd] = ask_user(
231
261
  "How should I launch tasks?\n %1$s: script path, %2$s: variables, " +
232
262
  "%3$d: CPUs, %4$d: log file, %5$s: task name.\n",
@@ -235,15 +265,15 @@ unless File.exist?(daemon_f) and ask_user(
235
265
  v[:var] = ask_user(
236
266
  "How should I pass variables?\n %1$s: keys, %2$s: values.\n",
237
267
  "%1$s=%2$s")
238
- v[:varsep] = ask_user("What should I use to separate variables?", ",")
239
- if v[:type] == "qsub"
268
+ v[:varsep] = ask_user('What should I use to separate variables?', ',')
269
+ if v[:type] == 'qsub'
240
270
  v[:alive] = ask_user(
241
271
  "How can I know that a process is still alive?\n %1$s: job id, " +
242
272
  "output should be 1 for running and 0 for non-running.\n",
243
273
  "qstat -f '%1$s'|grep ' job_state ='|perl -pe 's/.*= //'|grep '[^C]'"+
244
274
  "|tail -n1|wc -l|awk '{print $1}'")
245
- v[:kill] = ask_user(
246
- "How should I terminate tasks?\n %s: process ID.", "qdel '%s'")
275
+ v[:kill] = ask_user(
276
+ "How should I terminate tasks?\n %s: process ID.", "qdel '%s'")
247
277
  else
248
278
  v[:alive] = ask_user(
249
279
  "How can I know that a process is still alive?\n %1$s: job id, " +
@@ -251,13 +281,13 @@ unless File.exist?(daemon_f) and ask_user(
251
281
  "checkjob '%1$s'|grep '^State:'|perl -pe 's/.*: //'" +
252
282
  "|grep 'Deferred\\|Hold\\|Idle\\|Starting\\|Running\\|Blocked'"+
253
283
  "|tail -n1|wc -l|awk '{print $1}'")
254
- v[:kill] = ask_user(
255
- "How should I terminate tasks?\n %s: process ID.", "canceljob '%s'")
284
+ v[:kill] = ask_user(
285
+ "How should I terminate tasks?\n %s: process ID.", "canceljob '%s'")
256
286
  end
257
287
  end
258
- File.open(daemon_f, "w"){ |fh| fh.puts JSON.pretty_generate(v) }
288
+ File.open(daemon_f, 'w'){ |fh| fh.puts JSON.pretty_generate(v) }
259
289
  end
260
- $stderr.puts ""
290
+ $stderr.puts ''
261
291
 
262
292
  rc_fh.puts <<FOOT
263
293
 
@@ -267,5 +297,5 @@ MIGA_CONFIG_DATE='#{Time.now}'
267
297
 
268
298
  FOOT
269
299
 
270
- $stderr.puts "Configuration complete. MiGA is ready to work!"
271
- $stderr.puts ""
300
+ $stderr.puts 'Configuration complete. MiGA is ready to work!'
301
+ $stderr.puts ''
data/lib/miga/version.rb CHANGED
@@ -10,7 +10,7 @@ module MiGA
10
10
  # - Float representing the major.minor version.
11
11
  # - Integer representing gem releases of the current version.
12
12
  # - Integer representing minor changes that require new version number.
13
- VERSION = [0.3, 7, 0]
13
+ VERSION = [0.3, 7, 1]
14
14
 
15
15
  ##
16
16
  # Nickname for the current major.minor version.
@@ -0,0 +1 @@
1
+ utils/enveomics/Pipelines/assembly.pbs/../../Scripts/FastA.N50.pl
@@ -0,0 +1 @@
1
+ utils/enveomics/Pipelines/assembly.pbs/../../Scripts/FastA.filterN.pl
@@ -0,0 +1 @@
1
+ utils/enveomics/Pipelines/assembly.pbs/../../Scripts/FastA.length.pl
@@ -0,0 +1 @@
1
+ utils/enveomics/Pipelines/blast.pbs/../../Scripts/FastA.split.pl
@@ -0,0 +1 @@
1
+ utils/enveomics/Scripts/lib/../../enveomics.R
metadata CHANGED
@@ -1,95 +1,95 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: miga-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.7.0
4
+ version: 0.3.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luis M. Rodriguez-R
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-05 00:00:00.000000000 Z
11
+ date: 2019-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: daemons
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.2'
20
- - - '>='
20
+ - - ">="
21
21
  - !ruby/object:Gem::Version
22
22
  version: 1.2.4
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - ~>
27
+ - - "~>"
28
28
  - !ruby/object:Gem::Version
29
29
  version: '1.2'
30
- - - '>='
30
+ - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 1.2.4
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: json
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - - '>'
37
+ - - ">"
38
38
  - !ruby/object:Gem::Version
39
39
  version: '1.8'
40
- - - <
40
+ - - "<"
41
41
  - !ruby/object:Gem::Version
42
42
  version: '3'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - '>'
47
+ - - ">"
48
48
  - !ruby/object:Gem::Version
49
49
  version: '1.8'
50
- - - <
50
+ - - "<"
51
51
  - !ruby/object:Gem::Version
52
52
  version: '3'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: sqlite3
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
- - - ~>
57
+ - - "~>"
58
58
  - !ruby/object:Gem::Version
59
59
  version: '1.3'
60
60
  type: :runtime
61
61
  prerelease: false
62
62
  version_requirements: !ruby/object:Gem::Requirement
63
63
  requirements:
64
- - - ~>
64
+ - - "~>"
65
65
  - !ruby/object:Gem::Version
66
66
  version: '1.3'
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: rake
69
69
  requirement: !ruby/object:Gem::Requirement
70
70
  requirements:
71
- - - ~>
71
+ - - "~>"
72
72
  - !ruby/object:Gem::Version
73
73
  version: '11'
74
74
  type: :development
75
75
  prerelease: false
76
76
  version_requirements: !ruby/object:Gem::Requirement
77
77
  requirements:
78
- - - ~>
78
+ - - "~>"
79
79
  - !ruby/object:Gem::Version
80
80
  version: '11'
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: test-unit
83
83
  requirement: !ruby/object:Gem::Requirement
84
84
  requirements:
85
- - - ~>
85
+ - - "~>"
86
86
  - !ruby/object:Gem::Version
87
87
  version: '3'
88
88
  type: :development
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
91
91
  requirements:
92
- - - ~>
92
+ - - "~>"
93
93
  - !ruby/object:Gem::Version
94
94
  version: '3'
95
95
  description: Microbial Genomes Atlas
@@ -100,43 +100,62 @@ extensions: []
100
100
  extra_rdoc_files:
101
101
  - README.md
102
102
  files:
103
+ - Gemfile
104
+ - LICENSE
105
+ - README.md
106
+ - Rakefile
107
+ - actions/about.rb
108
+ - actions/add.rb
109
+ - actions/add_result.rb
110
+ - actions/daemon.rb
111
+ - actions/date.rb
112
+ - actions/doctor.rb
113
+ - actions/files.rb
114
+ - actions/find.rb
115
+ - actions/get.rb
116
+ - actions/init.rb
117
+ - actions/ln.rb
118
+ - actions/ls.rb
119
+ - actions/ncbi_get.rb
120
+ - actions/new.rb
121
+ - actions/plugins.rb
122
+ - actions/rm.rb
123
+ - actions/run.rb
124
+ - actions/stats.rb
125
+ - actions/summary.rb
126
+ - actions/tax_dist.rb
127
+ - actions/tax_index.rb
128
+ - actions/tax_set.rb
129
+ - actions/tax_test.rb
130
+ - bin/miga
131
+ - lib/miga.rb
132
+ - lib/miga/_data/aai-intax.tsv.gz
133
+ - lib/miga/_data/aai-novel.tsv.gz
134
+ - lib/miga/common.rb
103
135
  - lib/miga/common/base.rb
104
136
  - lib/miga/common/format.rb
105
137
  - lib/miga/common/path.rb
106
- - lib/miga/common.rb
107
- - lib/miga/daemon/base.rb
108
138
  - lib/miga/daemon.rb
139
+ - lib/miga/daemon/base.rb
140
+ - lib/miga/dataset.rb
109
141
  - lib/miga/dataset/base.rb
110
142
  - lib/miga/dataset/result.rb
111
- - lib/miga/dataset.rb
112
143
  - lib/miga/metadata.rb
144
+ - lib/miga/project.rb
113
145
  - lib/miga/project/base.rb
114
146
  - lib/miga/project/dataset.rb
115
147
  - lib/miga/project/plugins.rb
116
148
  - lib/miga/project/result.rb
117
- - lib/miga/project.rb
149
+ - lib/miga/remote_dataset.rb
118
150
  - lib/miga/remote_dataset/base.rb
119
151
  - lib/miga/remote_dataset/download.rb
120
- - lib/miga/remote_dataset.rb
152
+ - lib/miga/result.rb
121
153
  - lib/miga/result/base.rb
122
154
  - lib/miga/result/dates.rb
123
- - lib/miga/result.rb
124
155
  - lib/miga/tax_dist.rb
125
156
  - lib/miga/tax_index.rb
126
157
  - lib/miga/taxonomy.rb
127
158
  - lib/miga/version.rb
128
- - lib/miga.rb
129
- - test/common_test.rb
130
- - test/daemon_test.rb
131
- - test/dataset_test.rb
132
- - test/metadata_test.rb
133
- - test/project_test.rb
134
- - test/remote_dataset_test.rb
135
- - test/tax_index_test.rb
136
- - test/taxonomy_test.rb
137
- - test/test_helper.rb
138
- - lib/miga/_data/aai-intax.tsv.gz
139
- - lib/miga/_data/aai-novel.tsv.gz
140
159
  - scripts/aai_distances.bash
141
160
  - scripts/ani_distances.bash
142
161
  - scripts/assembly.bash
@@ -158,6 +177,15 @@ files:
158
177
  - scripts/taxonomy.bash
159
178
  - scripts/trimmed_fasta.bash
160
179
  - scripts/trimmed_reads.bash
180
+ - test/common_test.rb
181
+ - test/daemon_test.rb
182
+ - test/dataset_test.rb
183
+ - test/metadata_test.rb
184
+ - test/project_test.rb
185
+ - test/remote_dataset_test.rb
186
+ - test/tax_index_test.rb
187
+ - test/taxonomy_test.rb
188
+ - test/test_helper.rb
161
189
  - utils/adapters.fa
162
190
  - utils/arch-ess-genes.rb
163
191
  - utils/cleanup-databases.rb
@@ -169,83 +197,13 @@ files:
169
197
  - utils/distance/runner.rb
170
198
  - utils/distance/temporal.rb
171
199
  - utils/distances.rb
172
- - utils/enveomics/build_enveomics_r.bash
173
200
  - utils/enveomics/Docs/recplot2.md
174
- - utils/enveomics/enveomics.R/data/growth.curves.rda
175
- - utils/enveomics/enveomics.R/data/phyla.counts.rda
176
- - utils/enveomics/enveomics.R/DESCRIPTION
177
- - utils/enveomics/enveomics.R/man/enve.__prune.iter.Rd
178
- - utils/enveomics/enveomics.R/man/enve.__prune.reduce.Rd
179
- - utils/enveomics/enveomics.R/man/enve.__tribs.Rd
180
- - utils/enveomics/enveomics.R/man/enve.barplot.Rd
181
- - utils/enveomics/enveomics.R/man/enve.cliopts.Rd
182
- - utils/enveomics/enveomics.R/man/enve.col.alpha.Rd
183
- - utils/enveomics/enveomics.R/man/enve.col2alpha.Rd
184
- - utils/enveomics/enveomics.R/man/enve.df2dist.group.Rd
185
- - utils/enveomics/enveomics.R/man/enve.df2dist.list.Rd
186
- - utils/enveomics/enveomics.R/man/enve.df2dist.Rd
187
- - utils/enveomics/enveomics.R/man/enve.GrowthCurve-class.Rd
188
- - utils/enveomics/enveomics.R/man/enve.growthcurve.Rd
189
- - utils/enveomics/enveomics.R/man/enve.prune.dist.Rd
190
- - utils/enveomics/enveomics.R/man/enve.recplot.Rd
191
- - utils/enveomics/enveomics.R/man/enve.recplot2-class.Rd
192
- - utils/enveomics/enveomics.R/man/enve.recplot2.__counts.Rd
193
- - utils/enveomics/enveomics.R/man/enve.recplot2.__peakHist.Rd
194
- - utils/enveomics/enveomics.R/man/enve.recplot2.__whichClosestPeak.Rd
195
- - utils/enveomics/enveomics.R/man/enve.recplot2.ANIr.Rd
196
- - utils/enveomics/enveomics.R/man/enve.recplot2.changeCutoff.Rd
197
- - utils/enveomics/enveomics.R/man/enve.recplot2.compareIdentities.Rd
198
- - utils/enveomics/enveomics.R/man/enve.recplot2.coordinates.Rd
199
- - utils/enveomics/enveomics.R/man/enve.recplot2.corePeak.Rd
200
- - utils/enveomics/enveomics.R/man/enve.recplot2.extractWindows.Rd
201
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_e.Rd
202
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_m.Rd
203
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__emauto_one.Rd
204
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mow_one.Rd
205
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mower.Rd
206
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.em.Rd
207
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.emauto.Rd
208
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd
209
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.Rd
210
- - utils/enveomics/enveomics.R/man/enve.recplot2.peak-class.Rd
211
- - utils/enveomics/enveomics.R/man/enve.recplot2.Rd
212
- - utils/enveomics/enveomics.R/man/enve.recplot2.seqdepth.Rd
213
- - utils/enveomics/enveomics.R/man/enve.TRIBS-class.Rd
214
- - utils/enveomics/enveomics.R/man/enve.TRIBS.merge.Rd
215
- - utils/enveomics/enveomics.R/man/enve.tribs.Rd
216
- - utils/enveomics/enveomics.R/man/enve.tribs.test.Rd
217
- - utils/enveomics/enveomics.R/man/enve.TRIBStest-class.Rd
218
- - utils/enveomics/enveomics.R/man/enveomics.R-package.Rd
219
- - utils/enveomics/enveomics.R/man/growth.curves.Rd
220
- - utils/enveomics/enveomics.R/man/phyla.counts.Rd
221
- - utils/enveomics/enveomics.R/man/plot.enve.GrowthCurve.Rd
222
- - utils/enveomics/enveomics.R/man/plot.enve.recplot2.Rd
223
- - utils/enveomics/enveomics.R/man/plot.enve.TRIBS.Rd
224
- - utils/enveomics/enveomics.R/man/plot.enve.TRIBStest.Rd
225
- - utils/enveomics/enveomics.R/man/summary.enve.GrowthCurve.Rd
226
- - utils/enveomics/enveomics.R/man/summary.enve.TRIBS.Rd
227
- - utils/enveomics/enveomics.R/man/summary.enve.TRIBStest.Rd
228
- - utils/enveomics/enveomics.R/man/z$-methods.Rd
229
- - utils/enveomics/enveomics.R/NAMESPACE
230
- - utils/enveomics/enveomics.R/R/autoprune.R
231
- - utils/enveomics/enveomics.R/R/barplot.R
232
- - utils/enveomics/enveomics.R/R/cliopts.R
233
- - utils/enveomics/enveomics.R/R/df2dist.R
234
- - utils/enveomics/enveomics.R/R/growthcurve.R
235
- - utils/enveomics/enveomics.R/R/recplot.R
236
- - utils/enveomics/enveomics.R/R/recplot2.R
237
- - utils/enveomics/enveomics.R/R/tribs.R
238
- - utils/enveomics/enveomics.R/R/utils.R
239
- - utils/enveomics/enveomics.R/README.md
240
201
  - utils/enveomics/Examples/aai-matrix.bash
241
202
  - utils/enveomics/Examples/ani-matrix.bash
242
203
  - utils/enveomics/Examples/essential-phylogeny.bash
243
204
  - utils/enveomics/Examples/unus-genome-phylogeny.bash
244
- - utils/enveomics/globals.mk
245
205
  - utils/enveomics/LICENSE.txt
246
206
  - utils/enveomics/Makefile
247
- - utils/enveomics/Manifest/categories.json
248
- - utils/enveomics/Manifest/examples.json
249
207
  - utils/enveomics/Manifest/Tasks/aasubs.json
250
208
  - utils/enveomics/Manifest/Tasks/blasttab.json
251
209
  - utils/enveomics/Manifest/Tasks/distances.json
@@ -260,20 +218,21 @@ files:
260
218
  - utils/enveomics/Manifest/Tasks/tables.json
261
219
  - utils/enveomics/Manifest/Tasks/trees.json
262
220
  - utils/enveomics/Manifest/Tasks/variants.json
221
+ - utils/enveomics/Manifest/categories.json
222
+ - utils/enveomics/Manifest/examples.json
263
223
  - utils/enveomics/Manifest/tasks.json
264
- - utils/enveomics/manifest.json
265
224
  - utils/enveomics/Pipelines/assembly.pbs/CONFIG.mock.bash
225
+ - utils/enveomics/Pipelines/assembly.pbs/FastA.N50.pl
266
226
  - utils/enveomics/Pipelines/assembly.pbs/FastA.filterN.pl
267
227
  - utils/enveomics/Pipelines/assembly.pbs/FastA.length.pl
268
- - utils/enveomics/Pipelines/assembly.pbs/FastA.N50.pl
269
- - utils/enveomics/Pipelines/assembly.pbs/kSelector.R
270
- - utils/enveomics/Pipelines/assembly.pbs/newbler.pbs
271
- - utils/enveomics/Pipelines/assembly.pbs/newbler_preparator.pl
272
228
  - utils/enveomics/Pipelines/assembly.pbs/README.md
273
229
  - utils/enveomics/Pipelines/assembly.pbs/RUNME-2.bash
274
230
  - utils/enveomics/Pipelines/assembly.pbs/RUNME-3.bash
275
231
  - utils/enveomics/Pipelines/assembly.pbs/RUNME-4.bash
276
232
  - utils/enveomics/Pipelines/assembly.pbs/RUNME.bash
233
+ - utils/enveomics/Pipelines/assembly.pbs/kSelector.R
234
+ - utils/enveomics/Pipelines/assembly.pbs/newbler.pbs
235
+ - utils/enveomics/Pipelines/assembly.pbs/newbler_preparator.pl
277
236
  - utils/enveomics/Pipelines/assembly.pbs/soap.pbs
278
237
  - utils/enveomics/Pipelines/assembly.pbs/stats.pbs
279
238
  - utils/enveomics/Pipelines/assembly.pbs/velvet.pbs
@@ -285,25 +244,23 @@ files:
285
244
  - utils/enveomics/Pipelines/blast.pbs/FastA.split.pl
286
245
  - utils/enveomics/Pipelines/blast.pbs/README.md
287
246
  - utils/enveomics/Pipelines/blast.pbs/RUNME.bash
288
- - utils/enveomics/Pipelines/blast.pbs/sentinel.pbs.bash
289
247
  - utils/enveomics/Pipelines/blast.pbs/TASK.check.bash
290
248
  - utils/enveomics/Pipelines/blast.pbs/TASK.dry.bash
291
249
  - utils/enveomics/Pipelines/blast.pbs/TASK.eo.bash
292
250
  - utils/enveomics/Pipelines/blast.pbs/TASK.pause.bash
293
251
  - utils/enveomics/Pipelines/blast.pbs/TASK.run.bash
252
+ - utils/enveomics/Pipelines/blast.pbs/sentinel.pbs.bash
294
253
  - utils/enveomics/Pipelines/idba.pbs/README.md
295
- - utils/enveomics/Pipelines/idba.pbs/run.pbs
296
254
  - utils/enveomics/Pipelines/idba.pbs/RUNME.bash
255
+ - utils/enveomics/Pipelines/idba.pbs/run.pbs
297
256
  - utils/enveomics/Pipelines/trim.pbs/README.md
298
- - utils/enveomics/Pipelines/trim.pbs/run.pbs
299
257
  - utils/enveomics/Pipelines/trim.pbs/RUNME.bash
258
+ - utils/enveomics/Pipelines/trim.pbs/run.pbs
300
259
  - utils/enveomics/README.md
301
- - utils/enveomics/Scripts/aai.rb
302
260
  - utils/enveomics/Scripts/AAsubs.log2ratio.rb
303
261
  - utils/enveomics/Scripts/Aln.cat.rb
304
262
  - utils/enveomics/Scripts/Aln.convert.pl
305
263
  - utils/enveomics/Scripts/AlphaDiversity.pl
306
- - utils/enveomics/Scripts/ani.rb
307
264
  - utils/enveomics/Scripts/BedGraph.tad.rb
308
265
  - utils/enveomics/Scripts/BedGraph.window.rb
309
266
  - utils/enveomics/Scripts/BlastPairwise.AAsubs.pl
@@ -318,16 +275,16 @@ files:
318
275
  - utils/enveomics/Scripts/BlastTab.pairedHits.rb
319
276
  - utils/enveomics/Scripts/BlastTab.recplot2.R
320
277
  - utils/enveomics/Scripts/BlastTab.seqdepth.pl
321
- - utils/enveomics/Scripts/BlastTab.seqdepth_nomedian.pl
322
278
  - utils/enveomics/Scripts/BlastTab.seqdepth_ZIP.pl
279
+ - utils/enveomics/Scripts/BlastTab.seqdepth_nomedian.pl
323
280
  - utils/enveomics/Scripts/BlastTab.subsample.pl
324
281
  - utils/enveomics/Scripts/BlastTab.sumPerHit.pl
325
282
  - utils/enveomics/Scripts/BlastTab.taxid2taxrank.pl
326
283
  - utils/enveomics/Scripts/BlastTab.topHits_sorted.rb
327
284
  - utils/enveomics/Scripts/Chao1.pl
328
285
  - utils/enveomics/Scripts/CharTable.classify.rb
329
- - utils/enveomics/Scripts/clust.rand.rb
330
286
  - utils/enveomics/Scripts/EBIseq2tax.rb
287
+ - utils/enveomics/Scripts/FastA.N50.pl
331
288
  - utils/enveomics/Scripts/FastA.filter.pl
332
289
  - utils/enveomics/Scripts/FastA.filterLen.pl
333
290
  - utils/enveomics/Scripts/FastA.filterN.pl
@@ -335,7 +292,6 @@ files:
335
292
  - utils/enveomics/Scripts/FastA.gc.pl
336
293
  - utils/enveomics/Scripts/FastA.interpose.pl
337
294
  - utils/enveomics/Scripts/FastA.length.pl
338
- - utils/enveomics/Scripts/FastA.N50.pl
339
295
  - utils/enveomics/Scripts/FastA.per_file.pl
340
296
  - utils/enveomics/Scripts/FastA.qlen.pl
341
297
  - utils/enveomics/Scripts/FastA.rename.pl
@@ -354,37 +310,22 @@ files:
354
310
  - utils/enveomics/Scripts/FastQ.test-error.rb
355
311
  - utils/enveomics/Scripts/FastQ.toFastA.awk
356
312
  - utils/enveomics/Scripts/GenBank.add_fields.rb
357
- - utils/enveomics/Scripts/gi2tax.rb
358
313
  - utils/enveomics/Scripts/HMM.essential.rb
359
314
  - utils/enveomics/Scripts/HMMsearch.extractIds.rb
360
- - utils/enveomics/Scripts/in_silico_GA_GI.pl
361
315
  - utils/enveomics/Scripts/JPlace.distances.rb
362
316
  - utils/enveomics/Scripts/JPlace.to_iToL.rb
363
- - utils/enveomics/Scripts/lib/data/essential.hmm.gz
364
- - utils/enveomics/Scripts/lib/enveomics_rb/enveomics.rb
365
- - utils/enveomics/Scripts/lib/enveomics_rb/jplace.rb
366
- - utils/enveomics/Scripts/lib/enveomics_rb/og.rb
367
- - utils/enveomics/Scripts/lib/enveomics_rb/remote_data.rb
368
- - utils/enveomics/Scripts/lib/enveomics_rb/seq_range.rb
369
- - utils/enveomics/Scripts/lib/enveomics_rb/stat.rb
370
- - utils/enveomics/Scripts/lib/enveomics_rb/vcf.rb
371
317
  - utils/enveomics/Scripts/M5nr.getSequences.rb
372
318
  - utils/enveomics/Scripts/MeTaxa.distribution.pl
373
319
  - utils/enveomics/Scripts/MyTaxa.fragsByTax.pl
374
320
  - utils/enveomics/Scripts/MyTaxa.seq-taxrank.rb
375
321
  - utils/enveomics/Scripts/NCBIacc2tax.rb
376
322
  - utils/enveomics/Scripts/Newick.autoprune.R
377
- - utils/enveomics/Scripts/ogs.annotate.rb
378
- - utils/enveomics/Scripts/ogs.core-pan.rb
379
- - utils/enveomics/Scripts/ogs.extract.rb
380
- - utils/enveomics/Scripts/ogs.mcl.rb
381
- - utils/enveomics/Scripts/ogs.rb
382
- - utils/enveomics/Scripts/ogs.stats.rb
383
323
  - utils/enveomics/Scripts/RAxML-EPA.to_iToL.pl
384
- - utils/enveomics/Scripts/rbm.rb
385
324
  - utils/enveomics/Scripts/RecPlot2.compareIdentities.R
386
325
  - utils/enveomics/Scripts/RefSeq.download.bash
387
326
  - utils/enveomics/Scripts/SRA.download.bash
327
+ - utils/enveomics/Scripts/TRIBS.plot-test.R
328
+ - utils/enveomics/Scripts/TRIBS.test.R
388
329
  - utils/enveomics/Scripts/Table.barplot.R
389
330
  - utils/enveomics/Scripts/Table.df2dist.R
390
331
  - utils/enveomics/Scripts/Table.filter.pl
@@ -393,10 +334,38 @@ files:
393
334
  - utils/enveomics/Scripts/Table.round.rb
394
335
  - utils/enveomics/Scripts/Table.split.pl
395
336
  - utils/enveomics/Scripts/Taxonomy.silva2ncbi.rb
396
- - utils/enveomics/Scripts/TRIBS.plot-test.R
397
- - utils/enveomics/Scripts/TRIBS.test.R
398
337
  - utils/enveomics/Scripts/VCF.KaKs.rb
399
338
  - utils/enveomics/Scripts/VCF.SNPs.rb
339
+ - utils/enveomics/Scripts/aai.rb
340
+ - utils/enveomics/Scripts/ani.rb
341
+ - utils/enveomics/Scripts/clust.rand.rb
342
+ - utils/enveomics/Scripts/gi2tax.rb
343
+ - utils/enveomics/Scripts/in_silico_GA_GI.pl
344
+ - utils/enveomics/Scripts/lib/data/essential.hmm.gz
345
+ - utils/enveomics/Scripts/lib/enveomics.R
346
+ - utils/enveomics/Scripts/lib/enveomics_rb/enveomics.rb
347
+ - utils/enveomics/Scripts/lib/enveomics_rb/jplace.rb
348
+ - utils/enveomics/Scripts/lib/enveomics_rb/og.rb
349
+ - utils/enveomics/Scripts/lib/enveomics_rb/remote_data.rb
350
+ - utils/enveomics/Scripts/lib/enveomics_rb/seq_range.rb
351
+ - utils/enveomics/Scripts/lib/enveomics_rb/stat.rb
352
+ - utils/enveomics/Scripts/lib/enveomics_rb/vcf.rb
353
+ - utils/enveomics/Scripts/ogs.annotate.rb
354
+ - utils/enveomics/Scripts/ogs.core-pan.rb
355
+ - utils/enveomics/Scripts/ogs.extract.rb
356
+ - utils/enveomics/Scripts/ogs.mcl.rb
357
+ - utils/enveomics/Scripts/ogs.rb
358
+ - utils/enveomics/Scripts/ogs.stats.rb
359
+ - utils/enveomics/Scripts/rbm.rb
360
+ - utils/enveomics/Tests/Makefile
361
+ - utils/enveomics/Tests/Mgen_M2288.faa
362
+ - utils/enveomics/Tests/Mgen_M2288.fna
363
+ - utils/enveomics/Tests/Mgen_M2321.fna
364
+ - utils/enveomics/Tests/Nequ_Kin4M.faa
365
+ - utils/enveomics/Tests/Xanthomonas_oryzae-PilA.tribs.Rdata
366
+ - utils/enveomics/Tests/Xanthomonas_oryzae-PilA.txt
367
+ - utils/enveomics/Tests/Xanthomonas_oryzae.aai-mat.tsv
368
+ - utils/enveomics/Tests/Xanthomonas_oryzae.aai.tsv
400
369
  - utils/enveomics/Tests/a_mg.cds-go.blast.tsv
401
370
  - utils/enveomics/Tests/a_mg.reads-cds.blast.tsv
402
371
  - utils/enveomics/Tests/a_mg.reads-cds.counts.tsv
@@ -409,11 +378,6 @@ files:
409
378
  - utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv
410
379
  - utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv.lim
411
380
  - utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv.rec
412
- - utils/enveomics/Tests/Makefile
413
- - utils/enveomics/Tests/Mgen_M2288.faa
414
- - utils/enveomics/Tests/Mgen_M2288.fna
415
- - utils/enveomics/Tests/Mgen_M2321.fna
416
- - utils/enveomics/Tests/Nequ_Kin4M.faa
417
381
  - utils/enveomics/Tests/phyla_counts.tsv
418
382
  - utils/enveomics/Tests/primate_lentivirus.ogs
419
383
  - utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-hiv1.rbm
@@ -422,10 +386,75 @@ files:
422
386
  - utils/enveomics/Tests/primate_lentivirus.rbm/hiv2-hiv2.rbm
423
387
  - utils/enveomics/Tests/primate_lentivirus.rbm/hiv2-siv.rbm
424
388
  - utils/enveomics/Tests/primate_lentivirus.rbm/siv-siv.rbm
425
- - utils/enveomics/Tests/Xanthomonas_oryzae-PilA.tribs.Rdata
426
- - utils/enveomics/Tests/Xanthomonas_oryzae-PilA.txt
427
- - utils/enveomics/Tests/Xanthomonas_oryzae.aai-mat.tsv
428
- - utils/enveomics/Tests/Xanthomonas_oryzae.aai.tsv
389
+ - utils/enveomics/build_enveomics_r.bash
390
+ - utils/enveomics/enveomics.R/DESCRIPTION
391
+ - utils/enveomics/enveomics.R/NAMESPACE
392
+ - utils/enveomics/enveomics.R/R/autoprune.R
393
+ - utils/enveomics/enveomics.R/R/barplot.R
394
+ - utils/enveomics/enveomics.R/R/cliopts.R
395
+ - utils/enveomics/enveomics.R/R/df2dist.R
396
+ - utils/enveomics/enveomics.R/R/growthcurve.R
397
+ - utils/enveomics/enveomics.R/R/recplot.R
398
+ - utils/enveomics/enveomics.R/R/recplot2.R
399
+ - utils/enveomics/enveomics.R/R/tribs.R
400
+ - utils/enveomics/enveomics.R/R/utils.R
401
+ - utils/enveomics/enveomics.R/README.md
402
+ - utils/enveomics/enveomics.R/data/growth.curves.rda
403
+ - utils/enveomics/enveomics.R/data/phyla.counts.rda
404
+ - utils/enveomics/enveomics.R/man/enve.GrowthCurve-class.Rd
405
+ - utils/enveomics/enveomics.R/man/enve.TRIBS-class.Rd
406
+ - utils/enveomics/enveomics.R/man/enve.TRIBS.merge.Rd
407
+ - utils/enveomics/enveomics.R/man/enve.TRIBStest-class.Rd
408
+ - utils/enveomics/enveomics.R/man/enve.__prune.iter.Rd
409
+ - utils/enveomics/enveomics.R/man/enve.__prune.reduce.Rd
410
+ - utils/enveomics/enveomics.R/man/enve.__tribs.Rd
411
+ - utils/enveomics/enveomics.R/man/enve.barplot.Rd
412
+ - utils/enveomics/enveomics.R/man/enve.cliopts.Rd
413
+ - utils/enveomics/enveomics.R/man/enve.col.alpha.Rd
414
+ - utils/enveomics/enveomics.R/man/enve.col2alpha.Rd
415
+ - utils/enveomics/enveomics.R/man/enve.df2dist.Rd
416
+ - utils/enveomics/enveomics.R/man/enve.df2dist.group.Rd
417
+ - utils/enveomics/enveomics.R/man/enve.df2dist.list.Rd
418
+ - utils/enveomics/enveomics.R/man/enve.growthcurve.Rd
419
+ - utils/enveomics/enveomics.R/man/enve.prune.dist.Rd
420
+ - utils/enveomics/enveomics.R/man/enve.recplot.Rd
421
+ - utils/enveomics/enveomics.R/man/enve.recplot2-class.Rd
422
+ - utils/enveomics/enveomics.R/man/enve.recplot2.ANIr.Rd
423
+ - utils/enveomics/enveomics.R/man/enve.recplot2.Rd
424
+ - utils/enveomics/enveomics.R/man/enve.recplot2.__counts.Rd
425
+ - utils/enveomics/enveomics.R/man/enve.recplot2.__peakHist.Rd
426
+ - utils/enveomics/enveomics.R/man/enve.recplot2.__whichClosestPeak.Rd
427
+ - utils/enveomics/enveomics.R/man/enve.recplot2.changeCutoff.Rd
428
+ - utils/enveomics/enveomics.R/man/enve.recplot2.compareIdentities.Rd
429
+ - utils/enveomics/enveomics.R/man/enve.recplot2.coordinates.Rd
430
+ - utils/enveomics/enveomics.R/man/enve.recplot2.corePeak.Rd
431
+ - utils/enveomics/enveomics.R/man/enve.recplot2.extractWindows.Rd
432
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.Rd
433
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_e.Rd
434
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_m.Rd
435
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__emauto_one.Rd
436
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mow_one.Rd
437
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mower.Rd
438
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.em.Rd
439
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.emauto.Rd
440
+ - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd
441
+ - utils/enveomics/enveomics.R/man/enve.recplot2.peak-class.Rd
442
+ - utils/enveomics/enveomics.R/man/enve.recplot2.seqdepth.Rd
443
+ - utils/enveomics/enveomics.R/man/enve.tribs.Rd
444
+ - utils/enveomics/enveomics.R/man/enve.tribs.test.Rd
445
+ - utils/enveomics/enveomics.R/man/enveomics.R-package.Rd
446
+ - utils/enveomics/enveomics.R/man/growth.curves.Rd
447
+ - utils/enveomics/enveomics.R/man/phyla.counts.Rd
448
+ - utils/enveomics/enveomics.R/man/plot.enve.GrowthCurve.Rd
449
+ - utils/enveomics/enveomics.R/man/plot.enve.TRIBS.Rd
450
+ - utils/enveomics/enveomics.R/man/plot.enve.TRIBStest.Rd
451
+ - utils/enveomics/enveomics.R/man/plot.enve.recplot2.Rd
452
+ - utils/enveomics/enveomics.R/man/summary.enve.GrowthCurve.Rd
453
+ - utils/enveomics/enveomics.R/man/summary.enve.TRIBS.Rd
454
+ - utils/enveomics/enveomics.R/man/summary.enve.TRIBStest.Rd
455
+ - utils/enveomics/enveomics.R/man/z$-methods.Rd
456
+ - utils/enveomics/globals.mk
457
+ - utils/enveomics/manifest.json
429
458
  - utils/find-medoid.R
430
459
  - utils/index_metadata.rb
431
460
  - utils/mytaxa_scan.R
@@ -442,34 +471,6 @@ files:
442
471
  - utils/subclades-nj.R
443
472
  - utils/subclades.R
444
473
  - utils/subclades.rb
445
- - bin/miga
446
- - actions/about.rb
447
- - actions/add.rb
448
- - actions/add_result.rb
449
- - actions/daemon.rb
450
- - actions/date.rb
451
- - actions/doctor.rb
452
- - actions/files.rb
453
- - actions/find.rb
454
- - actions/get.rb
455
- - actions/init.rb
456
- - actions/ln.rb
457
- - actions/ls.rb
458
- - actions/ncbi_get.rb
459
- - actions/new.rb
460
- - actions/plugins.rb
461
- - actions/rm.rb
462
- - actions/run.rb
463
- - actions/stats.rb
464
- - actions/summary.rb
465
- - actions/tax_dist.rb
466
- - actions/tax_index.rb
467
- - actions/tax_set.rb
468
- - actions/tax_test.rb
469
- - Gemfile
470
- - Rakefile
471
- - README.md
472
- - LICENSE
473
474
  homepage: http://enve-omics.ce.gatech.edu/miga
474
475
  licenses:
475
476
  - Artistic-2.0
@@ -478,27 +479,26 @@ post_install_message:
478
479
  rdoc_options:
479
480
  - lib
480
481
  - README.md
481
- - --main
482
+ - "--main"
482
483
  - README.md
483
- - --title
484
+ - "--title"
484
485
  - MiGA
485
486
  require_paths:
486
487
  - lib
487
488
  required_ruby_version: !ruby/object:Gem::Requirement
488
489
  requirements:
489
- - - '>='
490
+ - - ">="
490
491
  - !ruby/object:Gem::Version
491
492
  version: '1.9'
492
493
  required_rubygems_version: !ruby/object:Gem::Requirement
493
494
  requirements:
494
- - - '>='
495
+ - - ">="
495
496
  - !ruby/object:Gem::Version
496
497
  version: '0'
497
498
  requirements: []
498
499
  rubyforge_project:
499
- rubygems_version: 2.0.14.1
500
+ rubygems_version: 2.7.7
500
501
  signing_key:
501
502
  specification_version: 4
502
503
  summary: MiGA
503
504
  test_files: []
504
- has_rdoc:
@@ -1,56 +0,0 @@
1
- #!/usr/bin/env perl
2
- #
3
- # @author: Luis M. Rodriguez-R <lmrodriguezr at gmail dot com>
4
- # @update: Oct 07 2015
5
- # @license: artistic license 2.0
6
- #
7
- use strict;
8
- use warnings;
9
- use List::Util qw/sum min max/;
10
-
11
- my ($seqs, $minlen, $n__) = @ARGV;
12
- $seqs or die "
13
- Description:
14
- Calculates the N50 value of a set of sequences. Alternatively, it
15
- can calculate other N** values. It also calculates the total number
16
- of sequences and the total added length.
17
-
18
- Usage:
19
- $0 seqs.fa[ minlen[ **]]
20
-
21
- seqs.fa A FastA file containing the sequences.
22
- minlen (optional) The minimum length to take into consideration.
23
- By default: 0.
24
- ** Value N** to calculate. By default: 50 (N50).
25
- ";
26
- $minlen ||= 0;
27
- $n__ ||= 50;
28
-
29
- my @len = ();
30
- open SEQ, "<", $seqs or die "Cannot open file: $seqs: $!\n";
31
- while(<SEQ>){
32
- if(/^>/){
33
- push @len, 0;
34
- }else{
35
- next if /^;/;
36
- chomp;
37
- s/\W//g;
38
- $len[-1]+=length $_;
39
- }
40
- }
41
- close SEQ;
42
- @len = sort { $a <=> $b } map { $_>=$minlen?$_:() } @len;
43
- my $tot = (sum(@len) || 0);
44
-
45
- my $thr = $n__*$tot/100;
46
- my $pos = 0;
47
- for(@len){
48
- $pos+= $_;
49
- if($pos>=$thr){
50
- print "N$n__: $_\n";
51
- last;
52
- }
53
- }
54
- print "Sequences: ".scalar(@len)."\n";
55
- print "Total length: $tot\n";
56
-
@@ -1,60 +0,0 @@
1
- #!/usr/bin/env perl
2
- #
3
- # @author Luis M. Rodriguez-R
4
- # @update Oct-07-2015
5
- # @license artistic license 2.0
6
- #
7
-
8
- use warnings;
9
- use strict;
10
-
11
- my($file, $content, $stretch) = @ARGV;
12
- $file or die <<HELP
13
-
14
- Description:
15
- Filter sequences by N-content and presence of long homopolymers.
16
- Usage:
17
- $0 sequences.fa [content [stretch]] > filtered.fa
18
- Where:
19
- sequences.fa Input file in FastA format
20
- content A number between 0 and 1 indicating the maximum proportion of Ns
21
- (1 to turn off, 0.5 by default)
22
- stretch A number indicating the maximum number of consecutive identical
23
- nucleotides allowed (0 to turn off, 100 by default)
24
- filtered.fa Filtered set of sequences.
25
-
26
- HELP
27
- ;
28
- ($content ||= 0.5)+=0;
29
- ($stretch ||= 100)+=0;
30
-
31
- my $good = 0;
32
- my $N = 0;
33
-
34
- FASTA: {
35
- local $/ = "\n>";
36
- open FILE, "<", $file or die "I can not open the file: $file: $!\n";
37
- SEQ: while(<FILE>){
38
- $N++;
39
- s/^;.*//gm;
40
- s/>//g;
41
- my($n,$s) = split /\n/, $_, 2;
42
- (my $clean = $s) =~ s/[^ACTGN]//g;
43
- if($content < 1){
44
- (my $Ns = $clean) =~ s/[^N]//g;
45
- next SEQ if length($Ns)>length($clean)*$content;
46
- }
47
- if($stretch > 0){
48
- for my $nuc (qw(A C T G N)){
49
- next SEQ if $clean =~ m/[$nuc]{$stretch}/;
50
- }
51
- }
52
- print ">$n\n$s\n";
53
- $good++;
54
- }
55
- close FILE;
56
- print STDERR "Total sequences: $N\nAfter filtering: $good\n";
57
- }
58
-
59
-
60
-
@@ -1,38 +0,0 @@
1
- #!/usr/bin/env perl
2
- #
3
- # @author Luis M Rodriguez-R
4
- # @update Oct-07-2015
5
- # @license artistic license 2.0
6
- #
7
-
8
- use warnings;
9
- use strict;
10
-
11
- $#ARGV>=0 or die "
12
- Usage:
13
- $0 seqs.fa... > length.txt
14
-
15
- seqs.fa One or more FastA files.
16
- length.txt A table with the lengths of the sequences.
17
-
18
- ";
19
-
20
- for my $fa (@ARGV){
21
- open FA, "<", $fa or die "Cannot open file: $fa: $!\n";
22
- my $def = '';
23
- my $len = 0;
24
- while(<FA>){
25
- next if /^;/;
26
- if(m/^>(\S+)\s?/){
27
- print "$def\t$len\n" if $def;
28
- $def = $1;
29
- $len = 0;
30
- }else{
31
- s/[^A-Za-z]//g;
32
- $len+= length $_;
33
- }
34
- }
35
- print "$def\t$len\n" if $def;
36
- close FA;
37
- }
38
-
@@ -1,55 +0,0 @@
1
- #!/usr/bin/env perl
2
- #
3
- # @author Luis M. Rodriguez-R <lmrodriguezr at gmail dot com>
4
- # @update Oct-13-2015
5
- # @license artistic license 2.0
6
- #
7
-
8
- use warnings;
9
- use strict;
10
- use Symbol;
11
-
12
- my ($file, $base, $outN) = @ARGV;
13
-
14
- $outN ||= 12;
15
- ($file and $base) or die "
16
- Usage
17
- $0 in_file.fa out_base[ no_files]
18
-
19
- in_file.fa Input file in FastA format.
20
- out_base Prefix for the name of the output files. It will
21
- be appended with .<i>.fa, where <i> is a consecutive
22
- number starting in 1.
23
- no_files Number of files to generate. By default: 12.
24
-
25
- ";
26
-
27
-
28
- my @outSym = ();
29
- for my $i (1 .. $outN){
30
- $outSym[$i-1] = gensym;
31
- open $outSym[$i-1], ">", "$base.$i.fa" or
32
- die "I can not create the file: $base.$i.fa: $!\n";
33
- }
34
-
35
-
36
- my($i, $seq) = (-1, '');
37
- open FILE, "<", $file or die "I can not read the file: $file: $!\n";
38
- while(my $ln=<FILE>){
39
- next if $ln=~/^;/;
40
- if($ln =~ m/^>/){
41
- print { $outSym[$i % $outN] } $seq if $seq;
42
- $i++;
43
- $seq = '';
44
- }
45
- $seq.=$ln;
46
- }
47
- print { $outSym[$i % $outN] } $seq if $seq;
48
- close FILE;
49
-
50
- for(my $j=0; $j<$outN; $j++){
51
- close $outSym[$j];
52
- }
53
-
54
- print STDERR "Sequences: ".($i+1)."\nFiles: $outN\n";
55
-