miga-base 0.7.23.0 → 0.7.25.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -0
  3. data/Rakefile +1 -0
  4. data/lib/miga/cli/action/add.rb +10 -8
  5. data/lib/miga/cli/action/classify_wf.rb +12 -11
  6. data/lib/miga/cli/action/derep_wf.rb +3 -9
  7. data/lib/miga/cli/action/edit.rb +0 -1
  8. data/lib/miga/cli/action/find.rb +1 -1
  9. data/lib/miga/cli/action/generic.rb +1 -1
  10. data/lib/miga/cli/action/get.rb +7 -2
  11. data/lib/miga/cli/action/index_wf.rb +4 -2
  12. data/lib/miga/cli/action/init.rb +60 -59
  13. data/lib/miga/cli/action/init/files_helper.rb +2 -1
  14. data/lib/miga/cli/action/ncbi_get.rb +1 -1
  15. data/lib/miga/cli/action/new.rb +15 -9
  16. data/lib/miga/cli/action/option.rb +63 -0
  17. data/lib/miga/cli/action/preproc_wf.rb +7 -5
  18. data/lib/miga/cli/action/quality_wf.rb +3 -3
  19. data/lib/miga/cli/action/tax_dist.rb +1 -1
  20. data/lib/miga/cli/action/tax_test.rb +1 -1
  21. data/lib/miga/cli/action/wf.rb +72 -54
  22. data/lib/miga/cli/base.rb +17 -5
  23. data/lib/miga/cli/objects_helper.rb +23 -18
  24. data/lib/miga/common.rb +1 -1
  25. data/lib/miga/common/with_option.rb +83 -0
  26. data/lib/miga/common/with_result.rb +2 -1
  27. data/lib/miga/dataset/base.rb +20 -2
  28. data/lib/miga/dataset/result.rb +3 -2
  29. data/lib/miga/metadata.rb +25 -13
  30. data/lib/miga/project/base.rb +82 -2
  31. data/lib/miga/project/result.rb +4 -4
  32. data/lib/miga/result.rb +18 -15
  33. data/lib/miga/result/stats.rb +2 -2
  34. data/lib/miga/version.rb +2 -2
  35. data/scripts/essential_genes.bash +18 -3
  36. data/scripts/miga.bash +8 -2
  37. data/scripts/ogs.bash +2 -3
  38. data/test/dataset_test.rb +5 -5
  39. data/test/lair_test.rb +1 -2
  40. data/test/result_test.rb +22 -0
  41. data/test/with_option_test.rb +115 -0
  42. data/utils/cleanup-databases.rb +1 -2
  43. data/utils/distance/base.rb +9 -0
  44. data/utils/distance/commands.rb +183 -81
  45. data/utils/distance/database.rb +69 -10
  46. data/utils/distance/pipeline.rb +15 -21
  47. data/utils/distance/runner.rb +28 -49
  48. data/utils/distance/temporal.rb +4 -2
  49. data/utils/distances.rb +2 -2
  50. data/utils/index_metadata.rb +1 -2
  51. data/utils/requirements.txt +1 -1
  52. data/utils/subclade/runner.rb +9 -10
  53. metadata +9 -273
  54. data/utils/enveomics/Docs/recplot2.md +0 -244
  55. data/utils/enveomics/Examples/aai-matrix.bash +0 -66
  56. data/utils/enveomics/Examples/ani-matrix.bash +0 -66
  57. data/utils/enveomics/Examples/essential-phylogeny.bash +0 -105
  58. data/utils/enveomics/Examples/unus-genome-phylogeny.bash +0 -100
  59. data/utils/enveomics/LICENSE.txt +0 -73
  60. data/utils/enveomics/Makefile +0 -52
  61. data/utils/enveomics/Manifest/Tasks/aasubs.json +0 -103
  62. data/utils/enveomics/Manifest/Tasks/blasttab.json +0 -786
  63. data/utils/enveomics/Manifest/Tasks/distances.json +0 -161
  64. data/utils/enveomics/Manifest/Tasks/fasta.json +0 -766
  65. data/utils/enveomics/Manifest/Tasks/fastq.json +0 -243
  66. data/utils/enveomics/Manifest/Tasks/graphics.json +0 -126
  67. data/utils/enveomics/Manifest/Tasks/mapping.json +0 -67
  68. data/utils/enveomics/Manifest/Tasks/ogs.json +0 -382
  69. data/utils/enveomics/Manifest/Tasks/other.json +0 -829
  70. data/utils/enveomics/Manifest/Tasks/remote.json +0 -355
  71. data/utils/enveomics/Manifest/Tasks/sequence-identity.json +0 -501
  72. data/utils/enveomics/Manifest/Tasks/tables.json +0 -308
  73. data/utils/enveomics/Manifest/Tasks/trees.json +0 -68
  74. data/utils/enveomics/Manifest/Tasks/variants.json +0 -111
  75. data/utils/enveomics/Manifest/categories.json +0 -156
  76. data/utils/enveomics/Manifest/examples.json +0 -154
  77. data/utils/enveomics/Manifest/tasks.json +0 -4
  78. data/utils/enveomics/Pipelines/assembly.pbs/CONFIG.mock.bash +0 -69
  79. data/utils/enveomics/Pipelines/assembly.pbs/FastA.N50.pl +0 -1
  80. data/utils/enveomics/Pipelines/assembly.pbs/FastA.filterN.pl +0 -1
  81. data/utils/enveomics/Pipelines/assembly.pbs/FastA.length.pl +0 -1
  82. data/utils/enveomics/Pipelines/assembly.pbs/README.md +0 -189
  83. data/utils/enveomics/Pipelines/assembly.pbs/RUNME-2.bash +0 -112
  84. data/utils/enveomics/Pipelines/assembly.pbs/RUNME-3.bash +0 -23
  85. data/utils/enveomics/Pipelines/assembly.pbs/RUNME-4.bash +0 -44
  86. data/utils/enveomics/Pipelines/assembly.pbs/RUNME.bash +0 -50
  87. data/utils/enveomics/Pipelines/assembly.pbs/kSelector.R +0 -37
  88. data/utils/enveomics/Pipelines/assembly.pbs/newbler.pbs +0 -68
  89. data/utils/enveomics/Pipelines/assembly.pbs/newbler_preparator.pl +0 -49
  90. data/utils/enveomics/Pipelines/assembly.pbs/soap.pbs +0 -80
  91. data/utils/enveomics/Pipelines/assembly.pbs/stats.pbs +0 -57
  92. data/utils/enveomics/Pipelines/assembly.pbs/velvet.pbs +0 -63
  93. data/utils/enveomics/Pipelines/blast.pbs/01.pbs.bash +0 -38
  94. data/utils/enveomics/Pipelines/blast.pbs/02.pbs.bash +0 -73
  95. data/utils/enveomics/Pipelines/blast.pbs/03.pbs.bash +0 -21
  96. data/utils/enveomics/Pipelines/blast.pbs/BlastTab.recover_job.pl +0 -72
  97. data/utils/enveomics/Pipelines/blast.pbs/CONFIG.mock.bash +0 -98
  98. data/utils/enveomics/Pipelines/blast.pbs/FastA.split.pl +0 -1
  99. data/utils/enveomics/Pipelines/blast.pbs/README.md +0 -127
  100. data/utils/enveomics/Pipelines/blast.pbs/RUNME.bash +0 -109
  101. data/utils/enveomics/Pipelines/blast.pbs/TASK.check.bash +0 -128
  102. data/utils/enveomics/Pipelines/blast.pbs/TASK.dry.bash +0 -16
  103. data/utils/enveomics/Pipelines/blast.pbs/TASK.eo.bash +0 -22
  104. data/utils/enveomics/Pipelines/blast.pbs/TASK.pause.bash +0 -26
  105. data/utils/enveomics/Pipelines/blast.pbs/TASK.run.bash +0 -89
  106. data/utils/enveomics/Pipelines/blast.pbs/sentinel.pbs.bash +0 -29
  107. data/utils/enveomics/Pipelines/idba.pbs/README.md +0 -49
  108. data/utils/enveomics/Pipelines/idba.pbs/RUNME.bash +0 -95
  109. data/utils/enveomics/Pipelines/idba.pbs/run.pbs +0 -56
  110. data/utils/enveomics/Pipelines/trim.pbs/README.md +0 -54
  111. data/utils/enveomics/Pipelines/trim.pbs/RUNME.bash +0 -70
  112. data/utils/enveomics/Pipelines/trim.pbs/run.pbs +0 -130
  113. data/utils/enveomics/README.md +0 -42
  114. data/utils/enveomics/Scripts/AAsubs.log2ratio.rb +0 -171
  115. data/utils/enveomics/Scripts/Aln.cat.rb +0 -163
  116. data/utils/enveomics/Scripts/Aln.convert.pl +0 -35
  117. data/utils/enveomics/Scripts/AlphaDiversity.pl +0 -152
  118. data/utils/enveomics/Scripts/BedGraph.tad.rb +0 -93
  119. data/utils/enveomics/Scripts/BedGraph.window.rb +0 -71
  120. data/utils/enveomics/Scripts/BlastPairwise.AAsubs.pl +0 -102
  121. data/utils/enveomics/Scripts/BlastTab.addlen.rb +0 -63
  122. data/utils/enveomics/Scripts/BlastTab.advance.bash +0 -48
  123. data/utils/enveomics/Scripts/BlastTab.best_hit_sorted.pl +0 -55
  124. data/utils/enveomics/Scripts/BlastTab.catsbj.pl +0 -104
  125. data/utils/enveomics/Scripts/BlastTab.cogCat.rb +0 -76
  126. data/utils/enveomics/Scripts/BlastTab.filter.pl +0 -47
  127. data/utils/enveomics/Scripts/BlastTab.kegg_pep2path_rest.pl +0 -194
  128. data/utils/enveomics/Scripts/BlastTab.metaxaPrep.pl +0 -104
  129. data/utils/enveomics/Scripts/BlastTab.pairedHits.rb +0 -157
  130. data/utils/enveomics/Scripts/BlastTab.recplot2.R +0 -48
  131. data/utils/enveomics/Scripts/BlastTab.seqdepth.pl +0 -86
  132. data/utils/enveomics/Scripts/BlastTab.seqdepth_ZIP.pl +0 -119
  133. data/utils/enveomics/Scripts/BlastTab.seqdepth_nomedian.pl +0 -86
  134. data/utils/enveomics/Scripts/BlastTab.subsample.pl +0 -47
  135. data/utils/enveomics/Scripts/BlastTab.sumPerHit.pl +0 -114
  136. data/utils/enveomics/Scripts/BlastTab.taxid2taxrank.pl +0 -90
  137. data/utils/enveomics/Scripts/BlastTab.topHits_sorted.rb +0 -101
  138. data/utils/enveomics/Scripts/Chao1.pl +0 -97
  139. data/utils/enveomics/Scripts/CharTable.classify.rb +0 -234
  140. data/utils/enveomics/Scripts/EBIseq2tax.rb +0 -83
  141. data/utils/enveomics/Scripts/FastA.N50.pl +0 -56
  142. data/utils/enveomics/Scripts/FastA.extract.rb +0 -152
  143. data/utils/enveomics/Scripts/FastA.filter.pl +0 -52
  144. data/utils/enveomics/Scripts/FastA.filterLen.pl +0 -28
  145. data/utils/enveomics/Scripts/FastA.filterN.pl +0 -60
  146. data/utils/enveomics/Scripts/FastA.fragment.rb +0 -92
  147. data/utils/enveomics/Scripts/FastA.gc.pl +0 -42
  148. data/utils/enveomics/Scripts/FastA.interpose.pl +0 -93
  149. data/utils/enveomics/Scripts/FastA.length.pl +0 -38
  150. data/utils/enveomics/Scripts/FastA.mask.rb +0 -89
  151. data/utils/enveomics/Scripts/FastA.per_file.pl +0 -36
  152. data/utils/enveomics/Scripts/FastA.qlen.pl +0 -57
  153. data/utils/enveomics/Scripts/FastA.rename.pl +0 -65
  154. data/utils/enveomics/Scripts/FastA.revcom.pl +0 -23
  155. data/utils/enveomics/Scripts/FastA.sample.rb +0 -83
  156. data/utils/enveomics/Scripts/FastA.slider.pl +0 -85
  157. data/utils/enveomics/Scripts/FastA.split.pl +0 -55
  158. data/utils/enveomics/Scripts/FastA.split.rb +0 -79
  159. data/utils/enveomics/Scripts/FastA.subsample.pl +0 -131
  160. data/utils/enveomics/Scripts/FastA.tag.rb +0 -65
  161. data/utils/enveomics/Scripts/FastA.wrap.rb +0 -48
  162. data/utils/enveomics/Scripts/FastQ.filter.pl +0 -54
  163. data/utils/enveomics/Scripts/FastQ.interpose.pl +0 -90
  164. data/utils/enveomics/Scripts/FastQ.offset.pl +0 -90
  165. data/utils/enveomics/Scripts/FastQ.split.pl +0 -53
  166. data/utils/enveomics/Scripts/FastQ.tag.rb +0 -63
  167. data/utils/enveomics/Scripts/FastQ.test-error.rb +0 -81
  168. data/utils/enveomics/Scripts/FastQ.toFastA.awk +0 -24
  169. data/utils/enveomics/Scripts/GFF.catsbj.pl +0 -127
  170. data/utils/enveomics/Scripts/GenBank.add_fields.rb +0 -84
  171. data/utils/enveomics/Scripts/HMM.essential.rb +0 -351
  172. data/utils/enveomics/Scripts/HMM.haai.rb +0 -168
  173. data/utils/enveomics/Scripts/HMMsearch.extractIds.rb +0 -83
  174. data/utils/enveomics/Scripts/JPlace.distances.rb +0 -88
  175. data/utils/enveomics/Scripts/JPlace.to_iToL.rb +0 -320
  176. data/utils/enveomics/Scripts/M5nr.getSequences.rb +0 -81
  177. data/utils/enveomics/Scripts/MeTaxa.distribution.pl +0 -198
  178. data/utils/enveomics/Scripts/MyTaxa.fragsByTax.pl +0 -35
  179. data/utils/enveomics/Scripts/MyTaxa.seq-taxrank.rb +0 -49
  180. data/utils/enveomics/Scripts/NCBIacc2tax.rb +0 -92
  181. data/utils/enveomics/Scripts/Newick.autoprune.R +0 -27
  182. data/utils/enveomics/Scripts/RAxML-EPA.to_iToL.pl +0 -228
  183. data/utils/enveomics/Scripts/RecPlot2.compareIdentities.R +0 -32
  184. data/utils/enveomics/Scripts/RefSeq.download.bash +0 -48
  185. data/utils/enveomics/Scripts/SRA.download.bash +0 -57
  186. data/utils/enveomics/Scripts/TRIBS.plot-test.R +0 -36
  187. data/utils/enveomics/Scripts/TRIBS.test.R +0 -39
  188. data/utils/enveomics/Scripts/Table.barplot.R +0 -31
  189. data/utils/enveomics/Scripts/Table.df2dist.R +0 -30
  190. data/utils/enveomics/Scripts/Table.filter.pl +0 -61
  191. data/utils/enveomics/Scripts/Table.merge.pl +0 -77
  192. data/utils/enveomics/Scripts/Table.replace.rb +0 -69
  193. data/utils/enveomics/Scripts/Table.round.rb +0 -63
  194. data/utils/enveomics/Scripts/Table.split.pl +0 -57
  195. data/utils/enveomics/Scripts/Taxonomy.silva2ncbi.rb +0 -227
  196. data/utils/enveomics/Scripts/VCF.KaKs.rb +0 -147
  197. data/utils/enveomics/Scripts/VCF.SNPs.rb +0 -88
  198. data/utils/enveomics/Scripts/aai.rb +0 -418
  199. data/utils/enveomics/Scripts/ani.rb +0 -362
  200. data/utils/enveomics/Scripts/clust.rand.rb +0 -102
  201. data/utils/enveomics/Scripts/gi2tax.rb +0 -103
  202. data/utils/enveomics/Scripts/in_silico_GA_GI.pl +0 -96
  203. data/utils/enveomics/Scripts/lib/data/dupont_2012_essential.hmm.gz +0 -0
  204. data/utils/enveomics/Scripts/lib/data/lee_2019_essential.hmm.gz +0 -0
  205. data/utils/enveomics/Scripts/lib/enveomics.R +0 -1
  206. data/utils/enveomics/Scripts/lib/enveomics_rb/enveomics.rb +0 -24
  207. data/utils/enveomics/Scripts/lib/enveomics_rb/jplace.rb +0 -253
  208. data/utils/enveomics/Scripts/lib/enveomics_rb/og.rb +0 -182
  209. data/utils/enveomics/Scripts/lib/enveomics_rb/remote_data.rb +0 -74
  210. data/utils/enveomics/Scripts/lib/enveomics_rb/seq_range.rb +0 -237
  211. data/utils/enveomics/Scripts/lib/enveomics_rb/stat.rb +0 -30
  212. data/utils/enveomics/Scripts/lib/enveomics_rb/vcf.rb +0 -135
  213. data/utils/enveomics/Scripts/ogs.annotate.rb +0 -88
  214. data/utils/enveomics/Scripts/ogs.core-pan.rb +0 -160
  215. data/utils/enveomics/Scripts/ogs.extract.rb +0 -125
  216. data/utils/enveomics/Scripts/ogs.mcl.rb +0 -186
  217. data/utils/enveomics/Scripts/ogs.rb +0 -104
  218. data/utils/enveomics/Scripts/ogs.stats.rb +0 -131
  219. data/utils/enveomics/Scripts/rbm.rb +0 -146
  220. data/utils/enveomics/Tests/Makefile +0 -10
  221. data/utils/enveomics/Tests/Mgen_M2288.faa +0 -3189
  222. data/utils/enveomics/Tests/Mgen_M2288.fna +0 -8282
  223. data/utils/enveomics/Tests/Mgen_M2321.fna +0 -8288
  224. data/utils/enveomics/Tests/Nequ_Kin4M.faa +0 -2970
  225. data/utils/enveomics/Tests/Xanthomonas_oryzae-PilA.tribs.Rdata +0 -0
  226. data/utils/enveomics/Tests/Xanthomonas_oryzae-PilA.txt +0 -7
  227. data/utils/enveomics/Tests/Xanthomonas_oryzae.aai-mat.tsv +0 -17
  228. data/utils/enveomics/Tests/Xanthomonas_oryzae.aai.tsv +0 -137
  229. data/utils/enveomics/Tests/a_mg.cds-go.blast.tsv +0 -123
  230. data/utils/enveomics/Tests/a_mg.reads-cds.blast.tsv +0 -200
  231. data/utils/enveomics/Tests/a_mg.reads-cds.counts.tsv +0 -55
  232. data/utils/enveomics/Tests/alkB.nwk +0 -1
  233. data/utils/enveomics/Tests/anthrax-cansnp-data.tsv +0 -13
  234. data/utils/enveomics/Tests/anthrax-cansnp-key.tsv +0 -17
  235. data/utils/enveomics/Tests/hiv1.faa +0 -59
  236. data/utils/enveomics/Tests/hiv1.fna +0 -134
  237. data/utils/enveomics/Tests/hiv2.faa +0 -70
  238. data/utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv +0 -233
  239. data/utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv.lim +0 -1
  240. data/utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv.rec +0 -233
  241. data/utils/enveomics/Tests/phyla_counts.tsv +0 -10
  242. data/utils/enveomics/Tests/primate_lentivirus.ogs +0 -11
  243. data/utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-hiv1.rbm +0 -9
  244. data/utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-hiv2.rbm +0 -8
  245. data/utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-siv.rbm +0 -6
  246. data/utils/enveomics/Tests/primate_lentivirus.rbm/hiv2-hiv2.rbm +0 -9
  247. data/utils/enveomics/Tests/primate_lentivirus.rbm/hiv2-siv.rbm +0 -6
  248. data/utils/enveomics/Tests/primate_lentivirus.rbm/siv-siv.rbm +0 -6
  249. data/utils/enveomics/build_enveomics_r.bash +0 -45
  250. data/utils/enveomics/enveomics.R/DESCRIPTION +0 -31
  251. data/utils/enveomics/enveomics.R/NAMESPACE +0 -39
  252. data/utils/enveomics/enveomics.R/R/autoprune.R +0 -155
  253. data/utils/enveomics/enveomics.R/R/barplot.R +0 -184
  254. data/utils/enveomics/enveomics.R/R/cliopts.R +0 -135
  255. data/utils/enveomics/enveomics.R/R/df2dist.R +0 -154
  256. data/utils/enveomics/enveomics.R/R/growthcurve.R +0 -331
  257. data/utils/enveomics/enveomics.R/R/recplot.R +0 -354
  258. data/utils/enveomics/enveomics.R/R/recplot2.R +0 -1631
  259. data/utils/enveomics/enveomics.R/R/tribs.R +0 -583
  260. data/utils/enveomics/enveomics.R/R/utils.R +0 -50
  261. data/utils/enveomics/enveomics.R/README.md +0 -80
  262. data/utils/enveomics/enveomics.R/data/growth.curves.rda +0 -0
  263. data/utils/enveomics/enveomics.R/data/phyla.counts.rda +0 -0
  264. data/utils/enveomics/enveomics.R/man/cash-enve.GrowthCurve-method.Rd +0 -17
  265. data/utils/enveomics/enveomics.R/man/cash-enve.RecPlot2-method.Rd +0 -17
  266. data/utils/enveomics/enveomics.R/man/cash-enve.RecPlot2.Peak-method.Rd +0 -17
  267. data/utils/enveomics/enveomics.R/man/enve.GrowthCurve-class.Rd +0 -25
  268. data/utils/enveomics/enveomics.R/man/enve.TRIBS-class.Rd +0 -46
  269. data/utils/enveomics/enveomics.R/man/enve.TRIBS.merge.Rd +0 -23
  270. data/utils/enveomics/enveomics.R/man/enve.TRIBStest-class.Rd +0 -47
  271. data/utils/enveomics/enveomics.R/man/enve.__prune.iter.Rd +0 -23
  272. data/utils/enveomics/enveomics.R/man/enve.__prune.reduce.Rd +0 -23
  273. data/utils/enveomics/enveomics.R/man/enve.__tribs.Rd +0 -32
  274. data/utils/enveomics/enveomics.R/man/enve.barplot.Rd +0 -91
  275. data/utils/enveomics/enveomics.R/man/enve.cliopts.Rd +0 -57
  276. data/utils/enveomics/enveomics.R/man/enve.col.alpha.Rd +0 -24
  277. data/utils/enveomics/enveomics.R/man/enve.col2alpha.Rd +0 -19
  278. data/utils/enveomics/enveomics.R/man/enve.df2dist.Rd +0 -39
  279. data/utils/enveomics/enveomics.R/man/enve.df2dist.group.Rd +0 -38
  280. data/utils/enveomics/enveomics.R/man/enve.df2dist.list.Rd +0 -40
  281. data/utils/enveomics/enveomics.R/man/enve.growthcurve.Rd +0 -67
  282. data/utils/enveomics/enveomics.R/man/enve.prune.dist.Rd +0 -37
  283. data/utils/enveomics/enveomics.R/man/enve.recplot.Rd +0 -122
  284. data/utils/enveomics/enveomics.R/man/enve.recplot2-class.Rd +0 -45
  285. data/utils/enveomics/enveomics.R/man/enve.recplot2.ANIr.Rd +0 -24
  286. data/utils/enveomics/enveomics.R/man/enve.recplot2.Rd +0 -68
  287. data/utils/enveomics/enveomics.R/man/enve.recplot2.__counts.Rd +0 -25
  288. data/utils/enveomics/enveomics.R/man/enve.recplot2.__peakHist.Rd +0 -21
  289. data/utils/enveomics/enveomics.R/man/enve.recplot2.__whichClosestPeak.Rd +0 -19
  290. data/utils/enveomics/enveomics.R/man/enve.recplot2.changeCutoff.Rd +0 -19
  291. data/utils/enveomics/enveomics.R/man/enve.recplot2.compareIdentities.Rd +0 -41
  292. data/utils/enveomics/enveomics.R/man/enve.recplot2.coordinates.Rd +0 -29
  293. data/utils/enveomics/enveomics.R/man/enve.recplot2.corePeak.Rd +0 -18
  294. data/utils/enveomics/enveomics.R/man/enve.recplot2.extractWindows.Rd +0 -40
  295. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.Rd +0 -36
  296. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_e.Rd +0 -19
  297. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_m.Rd +0 -19
  298. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__emauto_one.Rd +0 -27
  299. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mow_one.Rd +0 -41
  300. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mower.Rd +0 -17
  301. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.em.Rd +0 -43
  302. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.emauto.Rd +0 -37
  303. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd +0 -74
  304. data/utils/enveomics/enveomics.R/man/enve.recplot2.peak-class.Rd +0 -59
  305. data/utils/enveomics/enveomics.R/man/enve.recplot2.seqdepth.Rd +0 -27
  306. data/utils/enveomics/enveomics.R/man/enve.recplot2.windowDepthThreshold.Rd +0 -32
  307. data/utils/enveomics/enveomics.R/man/enve.tribs.Rd +0 -59
  308. data/utils/enveomics/enveomics.R/man/enve.tribs.test.Rd +0 -28
  309. data/utils/enveomics/enveomics.R/man/enve.truncate.Rd +0 -27
  310. data/utils/enveomics/enveomics.R/man/growth.curves.Rd +0 -14
  311. data/utils/enveomics/enveomics.R/man/phyla.counts.Rd +0 -13
  312. data/utils/enveomics/enveomics.R/man/plot.enve.GrowthCurve.Rd +0 -63
  313. data/utils/enveomics/enveomics.R/man/plot.enve.TRIBS.Rd +0 -38
  314. data/utils/enveomics/enveomics.R/man/plot.enve.TRIBStest.Rd +0 -38
  315. data/utils/enveomics/enveomics.R/man/plot.enve.recplot2.Rd +0 -111
  316. data/utils/enveomics/enveomics.R/man/summary.enve.GrowthCurve.Rd +0 -19
  317. data/utils/enveomics/enveomics.R/man/summary.enve.TRIBS.Rd +0 -19
  318. data/utils/enveomics/enveomics.R/man/summary.enve.TRIBStest.Rd +0 -19
  319. data/utils/enveomics/globals.mk +0 -8
  320. data/utils/enveomics/manifest.json +0 -9
@@ -22,12 +22,16 @@ module MiGA::DistanceRunner::Database
22
22
  end
23
23
  end
24
24
  # Initialize if it doesn't exist
25
- SQLite3::Database.new(dbs[m]) do |conn|
26
- conn.execute "create table if not exists #{t}(" +
27
- "seq1 varchar(256), seq2 varchar(256), " +
28
- "#{t} float, sd float, n int, omega int" +
29
- ")"
30
- end unless File.size? dbs[m]
25
+ unless File.size? dbs[m]
26
+ SQLite3::Database.new(dbs[m]) do |conn|
27
+ conn.execute <<~SQL
28
+ create table if not exists #{t}(
29
+ seq1 varchar(256), seq2 varchar(256),
30
+ #{t} float, sd float, n int, omega int
31
+ )
32
+ SQL
33
+ end
34
+ end
31
35
  # Copy over to (local) temporals
32
36
  @tmp_dbs[m] = tmp_file("#{m}.db")
33
37
  FileUtils.cp(dbs[m], tmp_dbs[m])
@@ -66,7 +70,7 @@ module MiGA::DistanceRunner::Database
66
70
  return y unless y.nil? || y.zero?
67
71
 
68
72
  # Check if self.dataset <- target is done (another thread)
69
- if dataset.is_ref? && project.path == ref_project.path
73
+ if dataset.ref? && project.path == ref_project.path
70
74
  y = data_from_db(
71
75
  target.name, dataset.name, ref_db(metric, target.name), metric
72
76
  )
@@ -92,27 +96,72 @@ module MiGA::DistanceRunner::Database
92
96
  # possible number of matches
93
97
  def data_from_db(n1, n2, db, metric)
94
98
  y = nil
99
+ table = metric == :haai ? :aai : metric
95
100
  SQLite3::Database.new(db) do |conn|
96
101
  y = conn.execute(
97
- "select #{metric}, sd, n, omega from #{metric} where seq1=? and seq2=?",
102
+ "select #{table}, sd, n, omega from #{table} where seq1=? and seq2=?",
98
103
  [n1, n2]
99
104
  ).first
100
- end if File.size? db
105
+ end if File.size?(db)
101
106
  y
102
107
  end
103
108
 
104
109
  ##
105
110
  # Save +data+ of +metric+ between +n1+ and +n2+ in the +db+ database.
106
111
  def data_to_db(n1, n2, db, metric, data)
112
+ table = metric == :haai ? :aai : metric
107
113
  SQLite3::Database.new(db) do |conn|
108
114
  conn.execute(
109
- "insert into #{metric} (seq1, seq2, #{metric}, sd, n, omega) " +
115
+ "insert into #{table} (seq1, seq2, #{table}, sd, n, omega) " +
110
116
  "values (?, ?, ?, ?, ?, ?)", [n1, n2] + data
111
117
  )
112
118
  end
113
119
  checkpoint metric
114
120
  end
115
121
 
122
+ ##
123
+ # Saves +data+ of +metric+ in batch to the temporary database,
124
+ # and assumes query is +#dataset+. +data+ must be a hash with target names
125
+ # as key and arrays as values with: [val, sd, n, omega]
126
+ def batch_data_to_db(metric, data)
127
+ db = tmp_dbs[metric]
128
+ table = metric == :haai ? :aai : metric
129
+ `cp #{db} ~/here.db`
130
+ SQLite3::Database.new(db) do |conn|
131
+ data.each do |k, v|
132
+ sql = <<~SQL
133
+ insert into #{table} (
134
+ seq1, seq2, #{table}, sd, n, omega
135
+ ) values (?, ?, ?, ?, ?, ?)
136
+ SQL
137
+ conn.execute(sql, [dataset.name, k] + v)
138
+ end
139
+ end
140
+ checkpoint(metric)
141
+ end
142
+
143
+ ##
144
+ # Retrieves data of +metric+ in batch from the temporary database,
145
+ # and assumes query is +#dataset+. The output data is a hash with the same
146
+ # structure described for +#batch_data_to_db+
147
+ def batch_data_from_db(metric)
148
+ db = tmp_dbs[metric]
149
+ table = metric == :haai ? :aai : metric
150
+ data = {}
151
+ SQLite3::Database.new(db) do |conn|
152
+ sql = "select seq2, #{table}, sd, n, omega from #{table}"
153
+ conn.execute(sql).each { |row| data[row.shift] = row }
154
+ end
155
+ data
156
+ end
157
+
158
+ ##
159
+ # Retrieve only +metric+ values against +names+
160
+ def batch_values_from_db(metric, names)
161
+ data = batch_data_from_db(metric)
162
+ names.map { |i| data[i]&.first }
163
+ end
164
+
116
165
  ##
117
166
  # Iterates for each entry in +db+
118
167
  def foreach_in_db(db, metric, &blk)
@@ -120,4 +169,14 @@ module MiGA::DistanceRunner::Database
120
169
  conn.execute("select * from #{metric}").each { |r| blk[r] }
121
170
  end
122
171
  end
172
+
173
+ ##
174
+ # Select only those targets that are not yet stored in either direction
175
+ def pending_targets(targets, metric)
176
+ saved = batch_data_from_db(metric).keys
177
+ targets
178
+ .compact
179
+ .select { |i| !saved.include?(i.name) }
180
+ .select { |i| !stored_value(i, metric)&.> 0.0 }
181
+ end
123
182
  end
@@ -11,19 +11,14 @@ module MiGA::DistanceRunner::Pipeline
11
11
  val_med = ''
12
12
  val_cls = nil
13
13
  i_n = 0
14
- File.open(med, 'r') do |med_fh|
15
- med_fh.each_line do |med_ln|
16
- i_n += 1
17
- med_ln.chomp!
18
- val = send(metric, ref_project.dataset(med_ln))
19
- if !val.nil? and val >= max_val
20
- max_val = val
21
- val_med = med_ln
22
- val_cls = i_n
23
- puts "[#{classif}] New max: #{val_med} (#{val_cls}): #{max_val}"
24
- end
25
- end
26
- end
14
+ sbj_datasets = File.foreach(med).map { |i| ref_project.dataset(i.chomp) }
15
+ values = send(metric, sbj_datasets)
16
+ max_idx = values.map(&:to_f).each_with_index.max[1]
17
+ max_val = values[max_idx]
18
+ val_med = sbj_datasets[max_idx].name
19
+ val_cls = max_idx + 1
20
+ puts "[#{classif}] New max: #{val_med} (#{val_cls}): #{max_val}"
21
+
27
22
  classif = "#{classif}/miga-project.sc-#{val_cls}"
28
23
  result_fh.puts [val_cls, val_med, max_val, classif].join("\t")
29
24
  classify(clades, classif, metric, result_fh, val_cls)
@@ -31,12 +26,9 @@ module MiGA::DistanceRunner::Pipeline
31
26
 
32
27
  # Run distances against datasets listed in metadata's +:dist_req+
33
28
  def distances_by_request(metric)
34
- return unless dataset.metadata[:dist_req]
35
-
36
29
  $stderr.puts 'Running distances by request'
37
- dataset.metadata[:dist_req].each do |target|
38
- ds = ref_project.dataset(target) and send(metric, ds)
39
- end
30
+ sbj_datasets = dataset.option(:dist_req).map { |i| ref_project.dataset(i) }
31
+ send(metric, sbj_datasets)
40
32
  end
41
33
 
42
34
  # Builds a tree with all visited medoids from any classification level
@@ -76,8 +68,10 @@ module MiGA::DistanceRunner::Pipeline
76
68
  $stderr.puts "Testing taxonomy | opts = #{opts}"
77
69
  # Get taxonomy of closest relative
78
70
  from_ref_project = (project != ref_project)
79
- res_dir = from_ref_project ?
80
- File.expand_path('data/09.distances/05.taxonomy', project.path) : home
71
+ res_dir =
72
+ from_ref_project ?
73
+ File.expand_path('data/09.distances/05.taxonomy', project.path) :
74
+ home
81
75
  Dir.mkdir res_dir unless Dir.exist? res_dir
82
76
  File.open(File.expand_path("#{dataset.name}.done", res_dir), 'w') do |fh|
83
77
  fh.puts Time.now.to_s
@@ -112,7 +106,7 @@ module MiGA::DistanceRunner::Pipeline
112
106
  $stderr.puts 'Transferring taxonomy'
113
107
  return if tax.nil?
114
108
 
115
- pval = (project.metadata[:tax_pvalue] || 0.05).to_f
109
+ pval = project.option(:tax_pvalue)
116
110
  tax_a = tax
117
111
  .select { |i| i[1] != '?' && i[2] <= pval }
118
112
  .map { |i| i[0, 2].join(':') }
@@ -1,67 +1,48 @@
1
1
  require_relative 'base.rb'
2
- require_relative 'temporal.rb'
3
- require_relative 'database.rb'
4
- require_relative 'commands.rb'
5
- require_relative 'pipeline.rb'
6
2
 
7
3
  class MiGA::DistanceRunner
8
- include MiGA::DistanceRunner::Temporal
9
- include MiGA::DistanceRunner::Database
10
- include MiGA::DistanceRunner::Commands
11
- include MiGA::DistanceRunner::Pipeline
12
-
13
4
  attr_reader :project, :ref_project, :dataset, :opts, :home
14
5
  attr_reader :tmp, :tmp_dbs, :dbs, :db_counts
15
6
 
16
7
  def initialize(project_path, dataset_name, opts_hash = {})
17
8
  @opts = opts_hash
18
- @project = MiGA::Project.load(project_path) or
19
- raise "No project at #{project_path}"
9
+ @project = MiGA::Project.load(project_path)
10
+ @project or raise "No project at #{project_path}"
20
11
  @dataset = project.dataset(dataset_name)
21
12
  @home = File.expand_path('data/09.distances', project.path)
22
13
 
23
14
  # Default opts
24
- if project.metadata[:aai_save_rbm] == false
25
- @opts[:aai_save_rbm] ||= 'no-save-rbm'
26
- end
27
- @opts[:aai_save_rbm] ||= ENV.fetch('MIGA_AAI_SAVE_RBM') do
28
- project.is_clade? ? 'save-rbm' : 'no-save-rbm'
29
- end
30
- @opts[:thr] ||= ENV.fetch('CORES') { 2 }.to_i
31
- if opts[:run_taxonomy] and project.metadata[:ref_project]
32
- ref_path = project.metadata[:ref_project]
15
+ if opts[:run_taxonomy] && project.option(:ref_project)
16
+ ref_path = project.option(:ref_project)
33
17
  @home = File.expand_path('05.taxonomy', @home)
34
18
  @ref_project = MiGA::Project.load(ref_path)
35
19
  raise "Cannot load reference project: #{ref_path}" if @ref_project.nil?
36
- elsif !opts[:run_taxonomy] and dataset.metadata[:db_project]
37
- ref_path = dataset.metadata[:db_project]
38
- if project.metadata[:db_proj_dir]
39
- ref_path = File.expand_path(ref_path, project.metadata[:db_proj_dir])
20
+ elsif !opts[:run_taxonomy] && dataset.option(:db_project)
21
+ ref_path = dataset.option(:db_project)
22
+ if project.option(:db_proj_dir)
23
+ ref_path = File.expand_path(ref_path, project.option(:db_proj_dir))
40
24
  end
41
25
  @ref_project = MiGA::Project.load(ref_path)
42
26
  raise "Cannot load reference project: #{ref_path}" if @ref_project.nil?
43
27
  else
44
28
  @ref_project = project
45
29
  end
46
- [:haai_p, :aai_p, :ani_p, :distances_checkpoint].each do |m|
47
- @opts[m] ||= ref_project.metadata[m]
30
+ @opts[:thr] ||= ENV.fetch('CORES') { 1 }.to_i
31
+ %i[haai_p aai_p ani_p distances_checkpoint aai_save_rbm].each do |m|
32
+ @opts[m] ||= ref_project.option(m)
48
33
  end
49
- @opts[:aai_p] ||= 'blast+'
50
- @opts[:ani_p] ||= 'blast+'
51
- @opts[:distances_checkpoint] ||= 10
52
- @opts[:distances_checkpoint] = @opts[:distances_checkpoint].to_i
53
34
  $stderr.puts "Options: #{opts}"
54
35
  end
55
36
 
56
37
  # Launch the appropriate analysis
57
38
  def go!
58
39
  $stderr.puts "Launching analysis"
59
- return if dataset.is_multi?
40
+ return if dataset.multi?
60
41
 
61
42
  Dir.mktmpdir do |tmp_dir|
62
43
  @tmp = tmp_dir
63
44
  create_temporals
64
- opts[:run_taxonomy] ? go_taxonomy! : dataset.is_ref? ? go_ref! : go_query!
45
+ opts[:run_taxonomy] ? go_taxonomy! : dataset.ref? ? go_ref! : go_query!
65
46
  end
66
47
  end
67
48
 
@@ -72,12 +53,11 @@ class MiGA::DistanceRunner
72
53
  initialize_dbs! true
73
54
 
74
55
  # first-come-first-serve traverse
56
+ sbj = []
75
57
  ref_project.each_dataset do |ds|
76
- next if !ds.is_ref? or ds.is_multi? or ds.result(:essential_genes).nil?
77
-
78
- puts "[ #{Time.now} ] #{ds.name}"
79
- ani_after_aai(ds)
58
+ sbj << ds if ds.ref? && !ds.multi? && ds.result(:essential_genes)
80
59
  end
60
+ ani_after_aai(sbj)
81
61
 
82
62
  # Finalize
83
63
  %i[haai aai ani].each { |m| checkpoint! m if db_counts[m] > 0 }
@@ -88,7 +68,7 @@ class MiGA::DistanceRunner
88
68
  def go_query!
89
69
  $stderr.puts 'Launching analysis for query dataset'
90
70
  # Check if project is ready
91
- tsk = ref_project.is_clade? ? [:subclades, :ani] : [:clade_finding, :aai]
71
+ tsk = ref_project.clade? ? [:subclades, :ani] : [:clade_finding, :aai]
92
72
  res = ref_project.result(tsk[0])
93
73
  return if res.nil?
94
74
 
@@ -105,27 +85,26 @@ class MiGA::DistanceRunner
105
85
  par_dir = File.dirname(File.expand_path(classif, res.dir))
106
86
  par = File.expand_path('miga-project.classif', par_dir)
107
87
  closest = { dataset: nil, ani: 0.0 }
88
+ sbj_datasets = []
108
89
  if File.size? par
109
90
  File.open(par, 'r') do |fh|
110
91
  fh.each_line do |ln|
111
92
  r = ln.chomp.split("\t")
112
- next unless r[1].to_i == val_cls
113
-
114
- ani = ani_after_aai(ref_project.dataset(r[0]), 80.0)
115
- unless ani.nil? || ani < closest[:ani]
116
- closest = { ds: r[0], ani: ani }
117
- end
93
+ sbj_datasets << ref_project.dataset(r[0]) if r[1].to_i == val_cls
118
94
  end
119
95
  end
96
+ ani = ani_after_aai(sbj_datasets, 80.0)
97
+ ani_max = ani.map(&:to_f).each_with_index.max
98
+ closest = { ds: sbj_datasets[ani_max[1]].name, ani: ani_max[0] }
120
99
  end
121
100
 
122
101
  # Calculate all the AAIs/ANIs against the closest ANI95-clade (if AAI > 80%)
123
102
  cl_path = res.file_path :clades_ani95
124
- if !cl_path.nil? and File.size? cl_path and tsk[0] == :clade_finding
125
- File.foreach(cl_path)
126
- .map { |i| i.chomp.split(',') }
127
- .find(lambda { [] }) { |i| i.include? closest[:ds] }
128
- .each { |i| ani_after_aai(ref_project.dataset(i), 80.0) }
103
+ if !cl_path.nil? && File.size?(cl_path) && tsk[0] == :clade_finding
104
+ clades = File.foreach(cl_path).map { |i| i.chomp.split(',') }
105
+ sbj_dataset_names = clades.find { |i| i.include?(closest[:ds]) }
106
+ sbj_datasets = sbj_dataset_names&.map { |i| ref_project.dataset(i) }
107
+ ani_after_aai(sbj_datasets, 80.0) if sbj_datasets
129
108
  end
130
109
 
131
110
  # Finalize
@@ -137,7 +116,7 @@ class MiGA::DistanceRunner
137
116
  # Launch analysis for taxonomy jobs
138
117
  def go_taxonomy!
139
118
  $stderr.puts 'Launching taxonomy analysis'
140
- return unless project.metadata[:ref_project]
119
+ return unless project.option(:ref_project)
141
120
 
142
121
  go_query! # <- yeah, it's actually the same, just different ref_project
143
122
  end
@@ -24,8 +24,10 @@ module MiGA::DistanceRunner::Temporal
24
24
  end
25
25
  end
26
26
 
27
- # Temporal file with extension +ext+
28
- def tmp_file(ext)
27
+ # Temporal file with extension +ext+, or a unique ID if +ext+ is +nil+
28
+ def tmp_file(ext = nil)
29
+ @_tmp_count ||= 0
30
+ ext ||= "#{@_tmp_count += 1}.tmp"
29
31
  File.expand_path("#{dataset.name}.#{ext}", tmp)
30
32
  end
31
33
 
data/utils/distances.rb CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  require_relative 'distance/runner.rb'
4
4
 
5
- dataset = ARGV.shift
6
5
  project = ARGV.shift
6
+ dataset = ARGV.shift
7
7
  opts = Hash[ARGV.map { |i| i.split("=", 2).tap { |j| j[0] = j[0].to_sym } }]
8
- runner = MiGA::DistanceRunner.new(dataset, project, opts)
8
+ runner = MiGA::DistanceRunner.new(project, dataset, opts)
9
9
  runner.go!
@@ -17,8 +17,7 @@ def searchable(db, d, k, v)
17
17
  end
18
18
 
19
19
  p.each_dataset do |d|
20
- next unless d.is_ref?
21
- next unless d.is_active?
20
+ next unless d.ref? && d.active?
22
21
 
23
22
  searchable(db, d, :name, d.name)
24
23
  d.metadata.each do |k, v|
@@ -1,7 +1,7 @@
1
1
  Software Test exec Website Notes
2
2
  -------- --------- ------- -----
3
3
  Ruby ruby https://www.ruby-lang.org/ Required version: 2.3+
4
- Python python https://www.python.org/ Required version: 3+
4
+ Python python3 https://www.python.org/ Required version: 3+
5
5
  R R http://www.r-project.org/
6
6
  SQLite3 sqlite3 https://www.sqlite.org/
7
7
  NCBI BLAST+ blastp ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST
@@ -18,19 +18,18 @@ class MiGA::SubcladeRunner
18
18
  @step == :clade_finding ? '01.find.running' : '02.ani.running'
19
19
  )
20
20
  @opts[:thr] ||= ENV.fetch('CORES') { 2 }.to_i
21
- @opts[:run_clades] = !!@project.metadata.data.fetch(:run_clades) { true }
22
- @opts[:gsp_ani] = @project.metadata.data.fetch(:gsp_ani) { 95.0 }.to_f
23
- @opts[:gsp_aai] = @project.metadata.data.fetch(:gsp_aai) { 90.0 }.to_f
24
- @opts[:gsp_metric] =
25
- @project.metadata.data.fetch(:gsp_metric) { 'ani' }.to_s
21
+ @opts[:run_clades] = @project.option(:run_clades)
22
+ @opts[:gsp_ani] = @project.option(:gsp_ani)
23
+ @opts[:gsp_aai] = @project.option(:gsp_aai)
24
+ @opts[:gsp_metric] = @project.option(:gsp_metric)
26
25
  end
27
26
 
28
27
  # Launch the appropriate analysis
29
28
  def go!
30
29
  return if project.type == :metagenomes
31
30
 
32
- unless @project.dataset_names.any? { |i| @project.dataset(i).is_ref? }
33
- FileUtils.touch(File.expand_path('miga-project.empty', @home))
31
+ unless @project.dataset_names.any? { |i| @project.dataset(i).ref? }
32
+ FileUtils.touch(File.join(@home, 'miga-project.empty'))
34
33
  return
35
34
  end
36
35
  Dir.chdir home
@@ -44,15 +43,15 @@ class MiGA::SubcladeRunner
44
43
  # Launch analysis for clade_finding
45
44
  def go_clade_finding!
46
45
  cluster_species
47
- unless project.is_clade?
48
- subclades :aai
46
+ unless project.clade?
47
+ subclades(:aai)
49
48
  compile
50
49
  end
51
50
  end
52
51
 
53
52
  # Launch analysis for subclades
54
53
  def go_subclades!
55
- subclades :ani
54
+ subclades(:ani)
56
55
  compile
57
56
  end
58
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: miga-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.23.0
4
+ version: 0.7.25.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luis M. Rodriguez-R
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-09 00:00:00.000000000 Z
11
+ date: 2021-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: daemons
@@ -152,6 +152,7 @@ files:
152
152
  - lib/miga/cli/action/ncbi_get.rb
153
153
  - lib/miga/cli/action/new.rb
154
154
  - lib/miga/cli/action/next_step.rb
155
+ - lib/miga/cli/action/option.rb
155
156
  - lib/miga/cli/action/preproc_wf.rb
156
157
  - lib/miga/cli/action/quality_wf.rb
157
158
  - lib/miga/cli/action/rm.rb
@@ -174,6 +175,7 @@ files:
174
175
  - lib/miga/common/path.rb
175
176
  - lib/miga/common/with_daemon.rb
176
177
  - lib/miga/common/with_daemon_class.rb
178
+ - lib/miga/common/with_option.rb
177
179
  - lib/miga/common/with_result.rb
178
180
  - lib/miga/daemon.rb
179
181
  - lib/miga/daemon/base.rb
@@ -247,6 +249,7 @@ files:
247
249
  - test/taxonomy_test.rb
248
250
  - test/test_helper.rb
249
251
  - test/with_daemon_test.rb
252
+ - test/with_option_test.rb
250
253
  - utils/adapters.fa
251
254
  - utils/cleanup-databases.rb
252
255
  - utils/core-pan-plot.R
@@ -258,273 +261,6 @@ files:
258
261
  - utils/distance/temporal.rb
259
262
  - utils/distances.rb
260
263
  - utils/domain-ess-genes.rb
261
- - utils/enveomics/Docs/recplot2.md
262
- - utils/enveomics/Examples/aai-matrix.bash
263
- - utils/enveomics/Examples/ani-matrix.bash
264
- - utils/enveomics/Examples/essential-phylogeny.bash
265
- - utils/enveomics/Examples/unus-genome-phylogeny.bash
266
- - utils/enveomics/LICENSE.txt
267
- - utils/enveomics/Makefile
268
- - utils/enveomics/Manifest/Tasks/aasubs.json
269
- - utils/enveomics/Manifest/Tasks/blasttab.json
270
- - utils/enveomics/Manifest/Tasks/distances.json
271
- - utils/enveomics/Manifest/Tasks/fasta.json
272
- - utils/enveomics/Manifest/Tasks/fastq.json
273
- - utils/enveomics/Manifest/Tasks/graphics.json
274
- - utils/enveomics/Manifest/Tasks/mapping.json
275
- - utils/enveomics/Manifest/Tasks/ogs.json
276
- - utils/enveomics/Manifest/Tasks/other.json
277
- - utils/enveomics/Manifest/Tasks/remote.json
278
- - utils/enveomics/Manifest/Tasks/sequence-identity.json
279
- - utils/enveomics/Manifest/Tasks/tables.json
280
- - utils/enveomics/Manifest/Tasks/trees.json
281
- - utils/enveomics/Manifest/Tasks/variants.json
282
- - utils/enveomics/Manifest/categories.json
283
- - utils/enveomics/Manifest/examples.json
284
- - utils/enveomics/Manifest/tasks.json
285
- - utils/enveomics/Pipelines/assembly.pbs/CONFIG.mock.bash
286
- - utils/enveomics/Pipelines/assembly.pbs/FastA.N50.pl
287
- - utils/enveomics/Pipelines/assembly.pbs/FastA.filterN.pl
288
- - utils/enveomics/Pipelines/assembly.pbs/FastA.length.pl
289
- - utils/enveomics/Pipelines/assembly.pbs/README.md
290
- - utils/enveomics/Pipelines/assembly.pbs/RUNME-2.bash
291
- - utils/enveomics/Pipelines/assembly.pbs/RUNME-3.bash
292
- - utils/enveomics/Pipelines/assembly.pbs/RUNME-4.bash
293
- - utils/enveomics/Pipelines/assembly.pbs/RUNME.bash
294
- - utils/enveomics/Pipelines/assembly.pbs/kSelector.R
295
- - utils/enveomics/Pipelines/assembly.pbs/newbler.pbs
296
- - utils/enveomics/Pipelines/assembly.pbs/newbler_preparator.pl
297
- - utils/enveomics/Pipelines/assembly.pbs/soap.pbs
298
- - utils/enveomics/Pipelines/assembly.pbs/stats.pbs
299
- - utils/enveomics/Pipelines/assembly.pbs/velvet.pbs
300
- - utils/enveomics/Pipelines/blast.pbs/01.pbs.bash
301
- - utils/enveomics/Pipelines/blast.pbs/02.pbs.bash
302
- - utils/enveomics/Pipelines/blast.pbs/03.pbs.bash
303
- - utils/enveomics/Pipelines/blast.pbs/BlastTab.recover_job.pl
304
- - utils/enveomics/Pipelines/blast.pbs/CONFIG.mock.bash
305
- - utils/enveomics/Pipelines/blast.pbs/FastA.split.pl
306
- - utils/enveomics/Pipelines/blast.pbs/README.md
307
- - utils/enveomics/Pipelines/blast.pbs/RUNME.bash
308
- - utils/enveomics/Pipelines/blast.pbs/TASK.check.bash
309
- - utils/enveomics/Pipelines/blast.pbs/TASK.dry.bash
310
- - utils/enveomics/Pipelines/blast.pbs/TASK.eo.bash
311
- - utils/enveomics/Pipelines/blast.pbs/TASK.pause.bash
312
- - utils/enveomics/Pipelines/blast.pbs/TASK.run.bash
313
- - utils/enveomics/Pipelines/blast.pbs/sentinel.pbs.bash
314
- - utils/enveomics/Pipelines/idba.pbs/README.md
315
- - utils/enveomics/Pipelines/idba.pbs/RUNME.bash
316
- - utils/enveomics/Pipelines/idba.pbs/run.pbs
317
- - utils/enveomics/Pipelines/trim.pbs/README.md
318
- - utils/enveomics/Pipelines/trim.pbs/RUNME.bash
319
- - utils/enveomics/Pipelines/trim.pbs/run.pbs
320
- - utils/enveomics/README.md
321
- - utils/enveomics/Scripts/AAsubs.log2ratio.rb
322
- - utils/enveomics/Scripts/Aln.cat.rb
323
- - utils/enveomics/Scripts/Aln.convert.pl
324
- - utils/enveomics/Scripts/AlphaDiversity.pl
325
- - utils/enveomics/Scripts/BedGraph.tad.rb
326
- - utils/enveomics/Scripts/BedGraph.window.rb
327
- - utils/enveomics/Scripts/BlastPairwise.AAsubs.pl
328
- - utils/enveomics/Scripts/BlastTab.addlen.rb
329
- - utils/enveomics/Scripts/BlastTab.advance.bash
330
- - utils/enveomics/Scripts/BlastTab.best_hit_sorted.pl
331
- - utils/enveomics/Scripts/BlastTab.catsbj.pl
332
- - utils/enveomics/Scripts/BlastTab.cogCat.rb
333
- - utils/enveomics/Scripts/BlastTab.filter.pl
334
- - utils/enveomics/Scripts/BlastTab.kegg_pep2path_rest.pl
335
- - utils/enveomics/Scripts/BlastTab.metaxaPrep.pl
336
- - utils/enveomics/Scripts/BlastTab.pairedHits.rb
337
- - utils/enveomics/Scripts/BlastTab.recplot2.R
338
- - utils/enveomics/Scripts/BlastTab.seqdepth.pl
339
- - utils/enveomics/Scripts/BlastTab.seqdepth_ZIP.pl
340
- - utils/enveomics/Scripts/BlastTab.seqdepth_nomedian.pl
341
- - utils/enveomics/Scripts/BlastTab.subsample.pl
342
- - utils/enveomics/Scripts/BlastTab.sumPerHit.pl
343
- - utils/enveomics/Scripts/BlastTab.taxid2taxrank.pl
344
- - utils/enveomics/Scripts/BlastTab.topHits_sorted.rb
345
- - utils/enveomics/Scripts/Chao1.pl
346
- - utils/enveomics/Scripts/CharTable.classify.rb
347
- - utils/enveomics/Scripts/EBIseq2tax.rb
348
- - utils/enveomics/Scripts/FastA.N50.pl
349
- - utils/enveomics/Scripts/FastA.extract.rb
350
- - utils/enveomics/Scripts/FastA.filter.pl
351
- - utils/enveomics/Scripts/FastA.filterLen.pl
352
- - utils/enveomics/Scripts/FastA.filterN.pl
353
- - utils/enveomics/Scripts/FastA.fragment.rb
354
- - utils/enveomics/Scripts/FastA.gc.pl
355
- - utils/enveomics/Scripts/FastA.interpose.pl
356
- - utils/enveomics/Scripts/FastA.length.pl
357
- - utils/enveomics/Scripts/FastA.mask.rb
358
- - utils/enveomics/Scripts/FastA.per_file.pl
359
- - utils/enveomics/Scripts/FastA.qlen.pl
360
- - utils/enveomics/Scripts/FastA.rename.pl
361
- - utils/enveomics/Scripts/FastA.revcom.pl
362
- - utils/enveomics/Scripts/FastA.sample.rb
363
- - utils/enveomics/Scripts/FastA.slider.pl
364
- - utils/enveomics/Scripts/FastA.split.pl
365
- - utils/enveomics/Scripts/FastA.split.rb
366
- - utils/enveomics/Scripts/FastA.subsample.pl
367
- - utils/enveomics/Scripts/FastA.tag.rb
368
- - utils/enveomics/Scripts/FastA.wrap.rb
369
- - utils/enveomics/Scripts/FastQ.filter.pl
370
- - utils/enveomics/Scripts/FastQ.interpose.pl
371
- - utils/enveomics/Scripts/FastQ.offset.pl
372
- - utils/enveomics/Scripts/FastQ.split.pl
373
- - utils/enveomics/Scripts/FastQ.tag.rb
374
- - utils/enveomics/Scripts/FastQ.test-error.rb
375
- - utils/enveomics/Scripts/FastQ.toFastA.awk
376
- - utils/enveomics/Scripts/GFF.catsbj.pl
377
- - utils/enveomics/Scripts/GenBank.add_fields.rb
378
- - utils/enveomics/Scripts/HMM.essential.rb
379
- - utils/enveomics/Scripts/HMM.haai.rb
380
- - utils/enveomics/Scripts/HMMsearch.extractIds.rb
381
- - utils/enveomics/Scripts/JPlace.distances.rb
382
- - utils/enveomics/Scripts/JPlace.to_iToL.rb
383
- - utils/enveomics/Scripts/M5nr.getSequences.rb
384
- - utils/enveomics/Scripts/MeTaxa.distribution.pl
385
- - utils/enveomics/Scripts/MyTaxa.fragsByTax.pl
386
- - utils/enveomics/Scripts/MyTaxa.seq-taxrank.rb
387
- - utils/enveomics/Scripts/NCBIacc2tax.rb
388
- - utils/enveomics/Scripts/Newick.autoprune.R
389
- - utils/enveomics/Scripts/RAxML-EPA.to_iToL.pl
390
- - utils/enveomics/Scripts/RecPlot2.compareIdentities.R
391
- - utils/enveomics/Scripts/RefSeq.download.bash
392
- - utils/enveomics/Scripts/SRA.download.bash
393
- - utils/enveomics/Scripts/TRIBS.plot-test.R
394
- - utils/enveomics/Scripts/TRIBS.test.R
395
- - utils/enveomics/Scripts/Table.barplot.R
396
- - utils/enveomics/Scripts/Table.df2dist.R
397
- - utils/enveomics/Scripts/Table.filter.pl
398
- - utils/enveomics/Scripts/Table.merge.pl
399
- - utils/enveomics/Scripts/Table.replace.rb
400
- - utils/enveomics/Scripts/Table.round.rb
401
- - utils/enveomics/Scripts/Table.split.pl
402
- - utils/enveomics/Scripts/Taxonomy.silva2ncbi.rb
403
- - utils/enveomics/Scripts/VCF.KaKs.rb
404
- - utils/enveomics/Scripts/VCF.SNPs.rb
405
- - utils/enveomics/Scripts/aai.rb
406
- - utils/enveomics/Scripts/ani.rb
407
- - utils/enveomics/Scripts/clust.rand.rb
408
- - utils/enveomics/Scripts/gi2tax.rb
409
- - utils/enveomics/Scripts/in_silico_GA_GI.pl
410
- - utils/enveomics/Scripts/lib/data/dupont_2012_essential.hmm.gz
411
- - utils/enveomics/Scripts/lib/data/lee_2019_essential.hmm.gz
412
- - utils/enveomics/Scripts/lib/enveomics.R
413
- - utils/enveomics/Scripts/lib/enveomics_rb/enveomics.rb
414
- - utils/enveomics/Scripts/lib/enveomics_rb/jplace.rb
415
- - utils/enveomics/Scripts/lib/enveomics_rb/og.rb
416
- - utils/enveomics/Scripts/lib/enveomics_rb/remote_data.rb
417
- - utils/enveomics/Scripts/lib/enveomics_rb/seq_range.rb
418
- - utils/enveomics/Scripts/lib/enveomics_rb/stat.rb
419
- - utils/enveomics/Scripts/lib/enveomics_rb/vcf.rb
420
- - utils/enveomics/Scripts/ogs.annotate.rb
421
- - utils/enveomics/Scripts/ogs.core-pan.rb
422
- - utils/enveomics/Scripts/ogs.extract.rb
423
- - utils/enveomics/Scripts/ogs.mcl.rb
424
- - utils/enveomics/Scripts/ogs.rb
425
- - utils/enveomics/Scripts/ogs.stats.rb
426
- - utils/enveomics/Scripts/rbm.rb
427
- - utils/enveomics/Tests/Makefile
428
- - utils/enveomics/Tests/Mgen_M2288.faa
429
- - utils/enveomics/Tests/Mgen_M2288.fna
430
- - utils/enveomics/Tests/Mgen_M2321.fna
431
- - utils/enveomics/Tests/Nequ_Kin4M.faa
432
- - utils/enveomics/Tests/Xanthomonas_oryzae-PilA.tribs.Rdata
433
- - utils/enveomics/Tests/Xanthomonas_oryzae-PilA.txt
434
- - utils/enveomics/Tests/Xanthomonas_oryzae.aai-mat.tsv
435
- - utils/enveomics/Tests/Xanthomonas_oryzae.aai.tsv
436
- - utils/enveomics/Tests/a_mg.cds-go.blast.tsv
437
- - utils/enveomics/Tests/a_mg.reads-cds.blast.tsv
438
- - utils/enveomics/Tests/a_mg.reads-cds.counts.tsv
439
- - utils/enveomics/Tests/alkB.nwk
440
- - utils/enveomics/Tests/anthrax-cansnp-data.tsv
441
- - utils/enveomics/Tests/anthrax-cansnp-key.tsv
442
- - utils/enveomics/Tests/hiv1.faa
443
- - utils/enveomics/Tests/hiv1.fna
444
- - utils/enveomics/Tests/hiv2.faa
445
- - utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv
446
- - utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv.lim
447
- - utils/enveomics/Tests/hiv_mix-hiv1.blast.tsv.rec
448
- - utils/enveomics/Tests/phyla_counts.tsv
449
- - utils/enveomics/Tests/primate_lentivirus.ogs
450
- - utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-hiv1.rbm
451
- - utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-hiv2.rbm
452
- - utils/enveomics/Tests/primate_lentivirus.rbm/hiv1-siv.rbm
453
- - utils/enveomics/Tests/primate_lentivirus.rbm/hiv2-hiv2.rbm
454
- - utils/enveomics/Tests/primate_lentivirus.rbm/hiv2-siv.rbm
455
- - utils/enveomics/Tests/primate_lentivirus.rbm/siv-siv.rbm
456
- - utils/enveomics/build_enveomics_r.bash
457
- - utils/enveomics/enveomics.R/DESCRIPTION
458
- - utils/enveomics/enveomics.R/NAMESPACE
459
- - utils/enveomics/enveomics.R/R/autoprune.R
460
- - utils/enveomics/enveomics.R/R/barplot.R
461
- - utils/enveomics/enveomics.R/R/cliopts.R
462
- - utils/enveomics/enveomics.R/R/df2dist.R
463
- - utils/enveomics/enveomics.R/R/growthcurve.R
464
- - utils/enveomics/enveomics.R/R/recplot.R
465
- - utils/enveomics/enveomics.R/R/recplot2.R
466
- - utils/enveomics/enveomics.R/R/tribs.R
467
- - utils/enveomics/enveomics.R/R/utils.R
468
- - utils/enveomics/enveomics.R/README.md
469
- - utils/enveomics/enveomics.R/data/growth.curves.rda
470
- - utils/enveomics/enveomics.R/data/phyla.counts.rda
471
- - utils/enveomics/enveomics.R/man/cash-enve.GrowthCurve-method.Rd
472
- - utils/enveomics/enveomics.R/man/cash-enve.RecPlot2-method.Rd
473
- - utils/enveomics/enveomics.R/man/cash-enve.RecPlot2.Peak-method.Rd
474
- - utils/enveomics/enveomics.R/man/enve.GrowthCurve-class.Rd
475
- - utils/enveomics/enveomics.R/man/enve.TRIBS-class.Rd
476
- - utils/enveomics/enveomics.R/man/enve.TRIBS.merge.Rd
477
- - utils/enveomics/enveomics.R/man/enve.TRIBStest-class.Rd
478
- - utils/enveomics/enveomics.R/man/enve.__prune.iter.Rd
479
- - utils/enveomics/enveomics.R/man/enve.__prune.reduce.Rd
480
- - utils/enveomics/enveomics.R/man/enve.__tribs.Rd
481
- - utils/enveomics/enveomics.R/man/enve.barplot.Rd
482
- - utils/enveomics/enveomics.R/man/enve.cliopts.Rd
483
- - utils/enveomics/enveomics.R/man/enve.col.alpha.Rd
484
- - utils/enveomics/enveomics.R/man/enve.col2alpha.Rd
485
- - utils/enveomics/enveomics.R/man/enve.df2dist.Rd
486
- - utils/enveomics/enveomics.R/man/enve.df2dist.group.Rd
487
- - utils/enveomics/enveomics.R/man/enve.df2dist.list.Rd
488
- - utils/enveomics/enveomics.R/man/enve.growthcurve.Rd
489
- - utils/enveomics/enveomics.R/man/enve.prune.dist.Rd
490
- - utils/enveomics/enveomics.R/man/enve.recplot.Rd
491
- - utils/enveomics/enveomics.R/man/enve.recplot2-class.Rd
492
- - utils/enveomics/enveomics.R/man/enve.recplot2.ANIr.Rd
493
- - utils/enveomics/enveomics.R/man/enve.recplot2.Rd
494
- - utils/enveomics/enveomics.R/man/enve.recplot2.__counts.Rd
495
- - utils/enveomics/enveomics.R/man/enve.recplot2.__peakHist.Rd
496
- - utils/enveomics/enveomics.R/man/enve.recplot2.__whichClosestPeak.Rd
497
- - utils/enveomics/enveomics.R/man/enve.recplot2.changeCutoff.Rd
498
- - utils/enveomics/enveomics.R/man/enve.recplot2.compareIdentities.Rd
499
- - utils/enveomics/enveomics.R/man/enve.recplot2.coordinates.Rd
500
- - utils/enveomics/enveomics.R/man/enve.recplot2.corePeak.Rd
501
- - utils/enveomics/enveomics.R/man/enve.recplot2.extractWindows.Rd
502
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.Rd
503
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_e.Rd
504
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__em_m.Rd
505
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__emauto_one.Rd
506
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mow_one.Rd
507
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mower.Rd
508
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.em.Rd
509
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.emauto.Rd
510
- - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd
511
- - utils/enveomics/enveomics.R/man/enve.recplot2.peak-class.Rd
512
- - utils/enveomics/enveomics.R/man/enve.recplot2.seqdepth.Rd
513
- - utils/enveomics/enveomics.R/man/enve.recplot2.windowDepthThreshold.Rd
514
- - utils/enveomics/enveomics.R/man/enve.tribs.Rd
515
- - utils/enveomics/enveomics.R/man/enve.tribs.test.Rd
516
- - utils/enveomics/enveomics.R/man/enve.truncate.Rd
517
- - utils/enveomics/enveomics.R/man/growth.curves.Rd
518
- - utils/enveomics/enveomics.R/man/phyla.counts.Rd
519
- - utils/enveomics/enveomics.R/man/plot.enve.GrowthCurve.Rd
520
- - utils/enveomics/enveomics.R/man/plot.enve.TRIBS.Rd
521
- - utils/enveomics/enveomics.R/man/plot.enve.TRIBStest.Rd
522
- - utils/enveomics/enveomics.R/man/plot.enve.recplot2.Rd
523
- - utils/enveomics/enveomics.R/man/summary.enve.GrowthCurve.Rd
524
- - utils/enveomics/enveomics.R/man/summary.enve.TRIBS.Rd
525
- - utils/enveomics/enveomics.R/man/summary.enve.TRIBStest.Rd
526
- - utils/enveomics/globals.mk
527
- - utils/enveomics/manifest.json
528
264
  - utils/find-medoid.R
529
265
  - utils/index_metadata.rb
530
266
  - utils/mytaxa_scan.R
@@ -545,7 +281,7 @@ homepage: http://enve-omics.ce.gatech.edu/miga
545
281
  licenses:
546
282
  - Artistic-2.0
547
283
  metadata: {}
548
- post_install_message:
284
+ post_install_message:
549
285
  rdoc_options:
550
286
  - lib
551
287
  - README.md
@@ -566,8 +302,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
566
302
  - !ruby/object:Gem::Version
567
303
  version: '0'
568
304
  requirements: []
569
- rubygems_version: 3.1.2
570
- signing_key:
305
+ rubygems_version: 3.1.4
306
+ signing_key:
571
307
  specification_version: 4
572
308
  summary: MiGA
573
309
  test_files: []