rbbt-util 5.32.6 → 5.32.12

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,61 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rbbt/util/simpleopt'
4
+ require 'rbbt/workflow'
5
+ require 'rbbt/workflow/usage'
6
+ require 'rbbt/hpc'
7
+ require 'rbbt/hpc/orchestrate'
8
+ require 'time'
9
+
10
+ $slurm_options = SOPT.get <<EOF
11
+ -dr--dry_run Print only the template
12
+ -cj--clean_job Clean job
13
+ --drbbt* Use development version of rbbt
14
+ -sing--singularity Use Singularity
15
+ -si--singularity_img* Singularity image to use
16
+ -ug--user_group* Use alternative user group for group project directory
17
+ -c--contain* Contain in directory (using Singularity)
18
+ -s--sync* Contain in directory and sync jobs
19
+ -e--exclusive Make exclusive use of the node
20
+ -hm--highmem Make use of highmem cores
21
+ -wc--wipe_container* Wipe the jobs from the contain directory
22
+ -pd--purge_deps Purge job dependencies
23
+ -CS--contain_and_sync Contain and sync to default locations
24
+ -ci--copy_image When using a container directory, copy image there
25
+ -t--tail Tail the logs
26
+ -BPP--batch_procpath* Save Procpath performance for batch job; specify only options
27
+ -q--queue* Queue
28
+ -t--task_cpus* Tasks
29
+ -tm--time* Time
30
+ -m--mem* SLURM minimum memory
31
+ -mcpu--mem_per_cpu* SLURM minimum memory per CPU
32
+ -lin--licenses* SLURM licenses
33
+ -cons--constraint* SLURM constraint
34
+ -W--workflows* Additional workflows
35
+ -OR--orchestration_rules* Orchestration rules
36
+ -rmb--remove_batch_basedir Remove the SLURM working directory (command, STDIN, exit status, ...)
37
+ EOF
38
+
39
+ batch_system = $slurm_options.delete :batch_system
40
+ batch_system ||= 'auto'
41
+
42
+ HPC::BATCH_MODULE = HPC.batch_system batch_system
43
+
44
+ raise ParameterException.new("Could not detect batch_system: #{Misc.fingerprint batch_system}") if HPC::BATCH_MODULE.nil?
45
+
46
+ class Step
47
+ def run(*args)
48
+ if done?
49
+ self.load
50
+ else
51
+ begin
52
+ Log.debug "Issuing SLURM job for #{self.path}"
53
+ HPC::BATCH_MODULE.orchestrate_job(self, SOPT::GOT_OPTIONS.merge($slurm_options))
54
+ rescue HPC::SBATCH
55
+ end
56
+ end
57
+ end
58
+ end
59
+
60
+ ARGV.concat ["-W", $slurm_options[:workflows], '--detach'] if $slurm_options[:workflows]
61
+ load Rbbt.share.rbbt_commands.workflow.task.find
@@ -0,0 +1,55 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rbbt-util'
4
+ require 'rbbt/util/simpleopt'
5
+ require 'rbbt/hpc'
6
+
7
+ #$0 = "rbbt #{$previous_commands*""} #{ File.basename(__FILE__) }" if $previous_commands
8
+
9
+ options = SOPT.setup <<EOF
10
+
11
+ Queue a job in Marenostrum
12
+
13
+ $ rbbt slurm tail <directory> [options]
14
+
15
+ -h--help Print this help
16
+ -d--done Done jobs only
17
+ -e--error Error jobs only
18
+ -a--aborted SLURM aboted jobs
19
+ -r--running Running jobs only
20
+ -q--queued Queued jobs only
21
+ -j--job* Job ids
22
+ -s--search* Regular expression
23
+ -t--tail* Show the last lines of the STDERR
24
+ -p--progress Report progress of job and the dependencies
25
+ -SBP--sbatch_parameters show sbatch parameters
26
+ -PERF--procpath_performance show Procpath performance summary
27
+ -sacct--sacct_peformance show sacct performance summary
28
+ -bs--batch_system* Batch system to use: auto, lsf, slurm (default is auto-detect)
29
+ EOF
30
+
31
+ if options[:help]
32
+ if defined? rbbt_usage
33
+ rbbt_usage
34
+ else
35
+ puts SOPT.doc
36
+ end
37
+ exit 0
38
+ end
39
+
40
+ batch_system = options.delete :batch_system
41
+ batch_system ||= 'auto'
42
+
43
+ HPC::BATCH_MODULE = HPC.batch_system batch_system
44
+
45
+ raise ParameterException.new("Could not detect batch_system: #{Misc.fingerprint batch_system}") if HPC::BATCH_MODULE.nil?
46
+
47
+ directory = ARGV.shift
48
+
49
+ raise ParameterException if directory.nil?
50
+
51
+ directory = File.dirname(directory) unless File.directory?(directory)
52
+
53
+ require 'rbbt/hpc/slurm'
54
+
55
+ HPC::BATCH_MODULE.follow_job directory, true
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rbbt/util/simpleopt'
4
+ require 'rbbt/workflow'
5
+ require 'rbbt/workflow/usage'
6
+ require 'rbbt/hpc'
7
+ require 'time'
8
+
9
+ $slurm_options = SOPT.get <<EOF
10
+ -dr--dry_run Print only the template
11
+ -cj--clean_job Clean job
12
+ --drbbt* Use development version of rbbt
13
+ -sing--singularity Use Singularity
14
+ -si--singularity_img* Singularity image to use
15
+ -ug--user_group* Use alternative user group for group project directory
16
+ -c--contain* Contain in directory (using Singularity)
17
+ -s--sync* Contain in directory and sync jobs
18
+ -e--exclusive Make exclusive use of the node
19
+ -hm--highmem Make use of highmem cores
20
+ -wc--wipe_container* Wipe the jobs from the contain directory
21
+ -pd--purge_deps Purge job dependencies
22
+ -CS--contain_and_sync Contain and sync to default locations
23
+ -ci--copy_image When using a container directory, copy image there
24
+ -t--tail Tail the logs
25
+ -BPP--batch_procpath* Save Procpath performance for batch job; specify only options
26
+ -q--queue* Queue
27
+ -t--task_cpus* Tasks
28
+ -tm--time* Time
29
+ -m--mem* SLURM minimum memory
30
+ -mcpu--mem_per_cpu* SLURM minimum memory per CPU
31
+ -lin--licenses* SLURM licenses
32
+ -cons--constraint* SLURM constraint
33
+ -W--workflows* Additional workflows
34
+ -rmb--remove_batch_dir Remove the batch working directory (command, STDIN, exit status, ...)
35
+ -bs--batch_system* Batch system to use: auto, lsf, slurm (default is auto-detect)
36
+ EOF
37
+
38
+ batch_system = $slurm_options.delete :batch_system
39
+ batch_system ||= 'auto'
40
+
41
+ HPC::BATCH_MODULE = HPC.batch_system batch_system
42
+
43
+ raise ParameterException.new("Could not detect batch_system: #{Misc.fingerprint batch_system}") if HPC::BATCH_MODULE.nil?
44
+
45
+ class Step
46
+ def run(*args)
47
+ if done?
48
+ self.load
49
+ else
50
+ begin
51
+ Log.debug "Issuing SLURM job for #{self.path}"
52
+ HPC::BATCH_MODULE.run_job(self, SOPT::GOT_OPTIONS.merge($slurm_options))
53
+ rescue HPC::SBATCH
54
+ end
55
+ end
56
+ end
57
+ end
58
+
59
+ ARGV.concat ["-W", $slurm_options[:workflows]] if $slurm_options[:workflows]
60
+ load Rbbt.share.rbbt_commands.workflow.task.find
@@ -38,11 +38,11 @@ step.copy_files_dir
38
38
  dependencies = step.dependencies
39
39
 
40
40
  if remove && remove.any?
41
- remove_paths = dependencies.select do |dep|
42
- remove.include?(dep.task_name) || remove.include?([dep.workflow.to_s, dep.task_name] * "#")
43
- end.collect{|dep| dep.path }
41
+ remove_paths = dependencies.select do |dep|
42
+ remove.include?(dep.task_name) || remove.include?([dep.workflow.to_s, dep.task_name] * "#")
43
+ end.collect{|dep| dep.path }
44
44
  else
45
- remove_paths = dependencies.collect{|dep| dep.path }
45
+ remove_paths = dependencies.collect{|dep| dep.path }
46
46
  end
47
47
 
48
48
  step.set_info :dependencies, step.info[:dependencies].reject{|info| remove_paths.include? info.last}
@@ -50,6 +50,7 @@ step.set_info :dependencies, step.info[:dependencies].reject{|info| remove_paths
50
50
  if options[:purge] || options[:recursive_purge]
51
51
  dependencies.each do |dependency|
52
52
  next unless remove_paths.include? dependency.path
53
+ next unless Open.exists?(dependency.info_file)
53
54
  Step.purge(dependency.path, options[:recursive_purge])
54
55
  end
55
56
  end
@@ -0,0 +1,36 @@
1
+ require File.join(File.expand_path(File.dirname(__FILE__)), '../..', 'test_helper.rb')
2
+ require 'rbbt-util'
3
+ require 'rbbt/util/migrate'
4
+
5
+ class TestMigrate < Test::Unit::TestCase
6
+ def _test_source_locate
7
+ assert_equal 'var/jobs/', Rbbt.migrate_source_paths(Rbbt.root['var/jobs'].find(:user)).last
8
+ assert Rbbt.migrate_source_paths(Rbbt.root['var/jobs'].find(:user))[1].include?(File.join(ENV["HOME"], '.rbbt/var/jobs/'))
9
+ end
10
+
11
+ def test_migrate
12
+ Open.rm_rf Rbbt.tmp.test.migration_test.find(:user)
13
+ test_file = Rbbt.tmp.test.migration_test.migration_test_file.find(:user)
14
+ Open.write(test_file, "TEST")
15
+ TmpFile.with_file do |tmpdir|
16
+ Misc.in_dir tmpdir do
17
+ Log.with_severity 0 do
18
+ Rbbt.migrate('tmp/test/migration_test/migration_test_file', :current)
19
+ end
20
+ end
21
+ assert_equal "TEST", Open.read(File.join(tmpdir, 'tmp/test/migration_test/migration_test_file'))
22
+ end
23
+ end
24
+
25
+ def __test_migrate_turbo
26
+ Log.with_severity 0 do
27
+ TmpFile.with_file do |tmpdir|
28
+ Misc.in_dir tmpdir do
29
+ Rbbt.migrate('etc/config', :current, :source => 'mn1')
30
+ end
31
+ assert_equal "TEST", Open.read(File.join(tmpdir, 'etc/config'))
32
+ end
33
+ end
34
+ end
35
+ end
36
+
@@ -35,12 +35,12 @@ class TestDSL < Test::Unit::TestCase
35
35
 
36
36
  def test_config
37
37
  config = <<-EOC
38
- action1("Hello")
39
- action2("Good bye")
38
+ action1 "Hello"
39
+ action2 "Good bye"
40
40
  EOC
41
41
 
42
42
  begin
43
- assert(@parser.config(:action) == config)
43
+ assert_equal config.split("\n").collect{|l| l.strip}, @parser.config(:action).split("\n").collect{|l| l.strip}
44
44
  rescue SimpleDSL::NoRuby2Ruby
45
45
  end
46
46
  end
@@ -0,0 +1,31 @@
1
+ require File.join(File.expand_path(File.dirname(__FILE__)), '../../..', 'test_helper.rb')
2
+ require 'rbbt-util'
3
+ require 'rbbt/workflow'
4
+ require 'rbbt/workflow/util/archive'
5
+
6
+ module ArchiveTestWF
7
+ extend Workflow
8
+ task :test_archive => :string do
9
+ Open.write(file(:file1), "Test file")
10
+ "TEST"
11
+ end
12
+ end
13
+
14
+ class TestClass < Test::Unit::TestCase
15
+ def test_migrate
16
+ job = ArchiveTestWF.job(:test_archive)
17
+ job.run
18
+
19
+ Log.with_severity 0 do
20
+ TmpFile.with_file do |tmpdir|
21
+ Misc.in_dir tmpdir do
22
+ Step.migrate(job.path, :current, :delete => false, :print => false)
23
+ end
24
+ assert_equal "TEST", Open.read(File.join(tmpdir, 'var/jobs/ArchiveTestWF/test_archive/Default'))
25
+ end
26
+ end
27
+
28
+
29
+ end
30
+ end
31
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.32.6
4
+ version: 5.32.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-30 00:00:00.000000000 Z
11
+ date: 2021-05-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -165,7 +165,7 @@ dependencies:
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
167
  description: Utilities for handling tsv files, caches, etc
168
- email: miguel.vazquez@cnio.es
168
+ email: miguel.vazquez.g@bsc.es
169
169
  executables:
170
170
  - rbbt_query.rb
171
171
  - rbbt_exec.rb
@@ -282,6 +282,7 @@ files:
282
282
  - lib/rbbt/util/log/progress.rb
283
283
  - lib/rbbt/util/log/progress/report.rb
284
284
  - lib/rbbt/util/log/progress/util.rb
285
+ - lib/rbbt/util/migrate.rb
285
286
  - lib/rbbt/util/misc.rb
286
287
  - lib/rbbt/util/misc/annotated_module.rb
287
288
  - lib/rbbt/util/misc/bgzf.rb
@@ -377,6 +378,11 @@ files:
377
378
  - share/rbbt_commands/hpc/tail
378
379
  - share/rbbt_commands/hpc/task
379
380
  - share/rbbt_commands/log
381
+ - share/rbbt_commands/lsf/clean
382
+ - share/rbbt_commands/lsf/list
383
+ - share/rbbt_commands/lsf/orchestrate
384
+ - share/rbbt_commands/lsf/tail
385
+ - share/rbbt_commands/lsf/task
380
386
  - share/rbbt_commands/migrate
381
387
  - share/rbbt_commands/migrate_job
382
388
  - share/rbbt_commands/purge_job
@@ -386,6 +392,11 @@ files:
386
392
  - share/rbbt_commands/resource/produce
387
393
  - share/rbbt_commands/resource/read
388
394
  - share/rbbt_commands/rsync
395
+ - share/rbbt_commands/slurm/clean
396
+ - share/rbbt_commands/slurm/list
397
+ - share/rbbt_commands/slurm/orchestrate
398
+ - share/rbbt_commands/slurm/tail
399
+ - share/rbbt_commands/slurm/task
389
400
  - share/rbbt_commands/stat/abs
390
401
  - share/rbbt_commands/stat/boxplot
391
402
  - share/rbbt_commands/stat/compare_lists
@@ -522,6 +533,7 @@ files:
522
533
  - test/rbbt/util/test_excel2tsv.rb
523
534
  - test/rbbt/util/test_filecache.rb
524
535
  - test/rbbt/util/test_log.rb
536
+ - test/rbbt/util/test_migrate.rb
525
537
  - test/rbbt/util/test_misc.rb
526
538
  - test/rbbt/util/test_open.rb
527
539
  - test/rbbt/util/test_procpath.rb
@@ -536,13 +548,14 @@ files:
536
548
  - test/rbbt/workflow/test_schedule.rb
537
549
  - test/rbbt/workflow/test_step.rb
538
550
  - test/rbbt/workflow/test_task.rb
551
+ - test/rbbt/workflow/util/test_archive.rb
539
552
  - test/rbbt/workflow/util/test_orchestrator.rb
540
553
  - test/test_helper.rb
541
554
  homepage: http://github.com/mikisvaz/rbbt-util
542
555
  licenses:
543
556
  - MIT
544
557
  metadata: {}
545
- post_install_message:
558
+ post_install_message:
546
559
  rdoc_options: []
547
560
  require_paths:
548
561
  - lib
@@ -557,102 +570,103 @@ required_rubygems_version: !ruby/object:Gem::Requirement
557
570
  - !ruby/object:Gem::Version
558
571
  version: '0'
559
572
  requirements: []
560
- rubyforge_project:
561
- rubygems_version: 2.7.6
562
- signing_key:
573
+ rubygems_version: 3.1.4
574
+ signing_key:
563
575
  specification_version: 4
564
576
  summary: Utilities for the Ruby Bioinformatics Toolkit (rbbt)
565
577
  test_files:
566
- - test/test_helper.rb
567
- - test/rbbt/entity/test_identifiers.rb
568
- - test/rbbt/test_resource.rb
569
- - test/rbbt/test_association.rb
570
- - test/rbbt/hpc/test_slurm.rb
571
- - test/rbbt/hpc/test_batch.rb
572
- - test/rbbt/persist/test_tsv.rb
573
- - test/rbbt/persist/tsv/test_kyotocabinet.rb
574
- - test/rbbt/persist/tsv/test_lmdb.rb
575
- - test/rbbt/persist/tsv/test_tokyocabinet.rb
576
- - test/rbbt/persist/tsv/test_cdb.rb
577
- - test/rbbt/persist/tsv/test_leveldb.rb
578
- - test/rbbt/persist/tsv/test_sharder.rb
579
- - test/rbbt/test_packed_index.rb
580
578
  - test/rbbt/test_entity.rb
581
- - test/rbbt/test_fix_width_table.rb
582
579
  - test/rbbt/workflow/test_remote_workflow.rb
580
+ - test/rbbt/workflow/util/test_archive.rb
581
+ - test/rbbt/workflow/util/test_orchestrator.rb
583
582
  - test/rbbt/workflow/test_doc.rb
584
- - test/rbbt/workflow/step/test_dependencies.rb
585
583
  - test/rbbt/workflow/test_schedule.rb
586
- - test/rbbt/workflow/util/test_orchestrator.rb
587
- - test/rbbt/workflow/test_task.rb
588
584
  - test/rbbt/workflow/test_step.rb
589
- - test/rbbt/test_tsv.rb
590
- - test/rbbt/test_annotations.rb
591
- - test/rbbt/test_knowledge_base.rb
592
- - test/rbbt/util/test_simpleDSL.rb
593
- - test/rbbt/util/concurrency/processes/test_socket.rb
594
- - test/rbbt/util/concurrency/test_processes.rb
595
- - test/rbbt/util/concurrency/test_threads.rb
596
- - test/rbbt/util/test_filecache.rb
597
- - test/rbbt/util/simpleopt/test_get.rb
598
- - test/rbbt/util/simpleopt/test_parse.rb
599
- - test/rbbt/util/simpleopt/test_setup.rb
600
- - test/rbbt/util/test_misc.rb
601
- - test/rbbt/util/test_excel2tsv.rb
602
- - test/rbbt/util/test_semaphore.rb
603
- - test/rbbt/util/test_procpath.rb
604
- - test/rbbt/util/R/test_model.rb
605
- - test/rbbt/util/R/test_eval.rb
606
- - test/rbbt/util/R/test_plot.rb
607
- - test/rbbt/util/test_open.rb
608
- - test/rbbt/util/test_tmpfile.rb
609
- - test/rbbt/util/test_cmd.rb
610
- - test/rbbt/util/test_concurrency.rb
585
+ - test/rbbt/workflow/step/test_dependencies.rb
586
+ - test/rbbt/workflow/test_task.rb
587
+ - test/rbbt/resource/test_path.rb
611
588
  - test/rbbt/util/test_colorize.rb
612
- - test/rbbt/util/test_config.rb
613
- - test/rbbt/util/test_log.rb
614
- - test/rbbt/util/test_simpleopt.rb
615
- - test/rbbt/util/test_python.rb
616
- - test/rbbt/util/test_chain_methods.rb
589
+ - test/rbbt/util/test_procpath.rb
590
+ - test/rbbt/util/misc/test_development.rb
617
591
  - test/rbbt/util/misc/test_omics.rb
592
+ - test/rbbt/util/misc/test_pipes.rb
593
+ - test/rbbt/util/misc/test_format.rb
618
594
  - test/rbbt/util/misc/test_lock.rb
619
595
  - test/rbbt/util/misc/test_multipart_payload.rb
620
596
  - test/rbbt/util/misc/test_bgzf.rb
621
- - test/rbbt/util/misc/test_development.rb
622
- - test/rbbt/util/misc/test_format.rb
623
- - test/rbbt/util/misc/test_pipes.rb
597
+ - test/rbbt/util/test_concurrency.rb
598
+ - test/rbbt/util/test_cmd.rb
599
+ - test/rbbt/util/R/test_plot.rb
600
+ - test/rbbt/util/R/test_eval.rb
601
+ - test/rbbt/util/R/test_model.rb
602
+ - test/rbbt/util/test_config.rb
603
+ - test/rbbt/util/test_log.rb
604
+ - test/rbbt/util/test_simpleDSL.rb
624
605
  - test/rbbt/util/log/test_progress.rb
606
+ - test/rbbt/util/test_tmpfile.rb
625
607
  - test/rbbt/util/test_R.rb
626
- - test/rbbt/test_workflow.rb
627
- - test/rbbt/knowledge_base/test_entity.rb
628
- - test/rbbt/knowledge_base/test_enrichment.rb
629
- - test/rbbt/knowledge_base/test_traverse.rb
630
- - test/rbbt/knowledge_base/test_syndicate.rb
631
- - test/rbbt/knowledge_base/test_registry.rb
632
- - test/rbbt/knowledge_base/test_query.rb
633
- - test/rbbt/association/test_item.rb
634
- - test/rbbt/association/test_util.rb
635
- - test/rbbt/association/test_open.rb
636
- - test/rbbt/association/test_database.rb
637
- - test/rbbt/association/test_index.rb
638
- - test/rbbt/annotations/test_util.rb
639
- - test/rbbt/test_monitor.rb
640
- - test/rbbt/resource/test_path.rb
641
- - test/rbbt/test_hpc.rb
642
- - test/rbbt/test_persist.rb
608
+ - test/rbbt/util/test_excel2tsv.rb
609
+ - test/rbbt/util/test_misc.rb
610
+ - test/rbbt/util/test_open.rb
611
+ - test/rbbt/util/test_simpleopt.rb
612
+ - test/rbbt/util/simpleopt/test_parse.rb
613
+ - test/rbbt/util/simpleopt/test_setup.rb
614
+ - test/rbbt/util/simpleopt/test_get.rb
615
+ - test/rbbt/util/test_python.rb
616
+ - test/rbbt/util/test_filecache.rb
617
+ - test/rbbt/util/concurrency/test_processes.rb
618
+ - test/rbbt/util/concurrency/test_threads.rb
619
+ - test/rbbt/util/concurrency/processes/test_socket.rb
620
+ - test/rbbt/util/test_semaphore.rb
621
+ - test/rbbt/util/test_chain_methods.rb
622
+ - test/rbbt/util/test_migrate.rb
623
+ - test/rbbt/test_resource.rb
624
+ - test/rbbt/test_packed_index.rb
625
+ - test/rbbt/tsv/test_change_id.rb
626
+ - test/rbbt/tsv/test_attach.rb
627
+ - test/rbbt/tsv/test_filter.rb
643
628
  - test/rbbt/tsv/test_parser.rb
644
629
  - test/rbbt/tsv/test_csv.rb
645
- - test/rbbt/tsv/test_manipulate.rb
630
+ - test/rbbt/tsv/test_accessor.rb
631
+ - test/rbbt/tsv/test_matrix.rb
646
632
  - test/rbbt/tsv/test_field_index.rb
647
633
  - test/rbbt/tsv/test_util.rb
648
- - test/rbbt/tsv/test_accessor.rb
649
- - test/rbbt/tsv/test_filter.rb
650
- - test/rbbt/tsv/test_stream.rb
634
+ - test/rbbt/tsv/test_index.rb
651
635
  - test/rbbt/tsv/test_parallel.rb
652
- - test/rbbt/tsv/test_matrix.rb
653
- - test/rbbt/tsv/test_attach.rb
636
+ - test/rbbt/tsv/test_manipulate.rb
654
637
  - test/rbbt/tsv/test_excel.rb
655
- - test/rbbt/tsv/test_change_id.rb
656
- - test/rbbt/tsv/test_index.rb
657
- - test/rbbt/tsv/parallel/test_traverse.rb
658
638
  - test/rbbt/tsv/parallel/test_through.rb
639
+ - test/rbbt/tsv/parallel/test_traverse.rb
640
+ - test/rbbt/tsv/test_stream.rb
641
+ - test/rbbt/test_association.rb
642
+ - test/rbbt/hpc/test_batch.rb
643
+ - test/rbbt/hpc/test_slurm.rb
644
+ - test/rbbt/association/test_database.rb
645
+ - test/rbbt/association/test_item.rb
646
+ - test/rbbt/association/test_open.rb
647
+ - test/rbbt/association/test_util.rb
648
+ - test/rbbt/association/test_index.rb
649
+ - test/rbbt/test_knowledge_base.rb
650
+ - test/rbbt/persist/tsv/test_kyotocabinet.rb
651
+ - test/rbbt/persist/tsv/test_cdb.rb
652
+ - test/rbbt/persist/tsv/test_lmdb.rb
653
+ - test/rbbt/persist/tsv/test_sharder.rb
654
+ - test/rbbt/persist/tsv/test_leveldb.rb
655
+ - test/rbbt/persist/tsv/test_tokyocabinet.rb
656
+ - test/rbbt/persist/test_tsv.rb
657
+ - test/rbbt/test_tsv.rb
658
+ - test/rbbt/test_annotations.rb
659
+ - test/rbbt/test_fix_width_table.rb
660
+ - test/rbbt/test_workflow.rb
661
+ - test/rbbt/entity/test_identifiers.rb
662
+ - test/rbbt/annotations/test_util.rb
663
+ - test/rbbt/test_hpc.rb
664
+ - test/rbbt/test_monitor.rb
665
+ - test/rbbt/test_persist.rb
666
+ - test/rbbt/knowledge_base/test_entity.rb
667
+ - test/rbbt/knowledge_base/test_registry.rb
668
+ - test/rbbt/knowledge_base/test_syndicate.rb
669
+ - test/rbbt/knowledge_base/test_query.rb
670
+ - test/rbbt/knowledge_base/test_enrichment.rb
671
+ - test/rbbt/knowledge_base/test_traverse.rb
672
+ - test/test_helper.rb