rbbt-util 5.14.37 → 5.14.38
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rbbt/association/index.rb +5 -8
- data/lib/rbbt/tsv/manipulate.rb +28 -0
- data/lib/rbbt/util/misc/development.rb +5 -2
- data/lib/rbbt/workflow/accessor.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d8a0ba5fcb0625780c5a1cca6a17d1c7716533d0
|
4
|
+
data.tar.gz: db0e0a4843e3e8b63e7526ca1c1c6c156ee20f05
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a4554bce956bd3ae4c4f457cc815d084622bde543504f4105b2b218bb2fb99e1ec33accae814a278b4062d92ad35b30d19e8295ffb9633484ccdb3d89f4a91b
|
7
|
+
data.tar.gz: 3de5de3a7f71fdcbc40f0ca62132e1dbc49dc5924c62101361fbf0f5caf1bdcee797775a5e6d6777871a5b128e1fd74b37eef48e245f12cb8835e7cad968b656
|
@@ -83,9 +83,6 @@ module Association
|
|
83
83
|
end
|
84
84
|
end
|
85
85
|
end
|
86
|
-
|
87
|
-
data.close
|
88
|
-
data
|
89
86
|
end.tap do |data|
|
90
87
|
data.read if not Hash === data and data.respond_to? :read
|
91
88
|
Association::Index.setup data
|
@@ -118,8 +115,6 @@ module Association
|
|
118
115
|
raise "Can only reverse a TokyoCabinet::BDB dataset at the time"
|
119
116
|
end
|
120
117
|
|
121
|
-
self.read if self.respond_to? :read
|
122
|
-
|
123
118
|
if File.exists?(reverse_filename)
|
124
119
|
new = Persist.open_tokyocabinet(reverse_filename, false, serializer, TokyoCabinet::BDB)
|
125
120
|
new
|
@@ -127,9 +122,11 @@ module Association
|
|
127
122
|
FileUtils.mkdir_p File.dirname(reverse_filename) unless File.exists?(File.basename(reverse_filename))
|
128
123
|
new = Persist.open_tokyocabinet(reverse_filename, true, serializer, TokyoCabinet::BDB)
|
129
124
|
new.write
|
130
|
-
|
131
|
-
|
132
|
-
|
125
|
+
self.with_unnamed do
|
126
|
+
through do |key, value|
|
127
|
+
new_key = key.split("~").reverse.join("~")
|
128
|
+
new[new_key] = value
|
129
|
+
end
|
133
130
|
end
|
134
131
|
annotate(new)
|
135
132
|
new.key_field = key_field.split("~").values_at(1,0,2).compact * "~"
|
data/lib/rbbt/tsv/manipulate.rb
CHANGED
@@ -631,6 +631,34 @@ module TSV
|
|
631
631
|
self
|
632
632
|
end
|
633
633
|
|
634
|
+
def add_fields(names = [])
|
635
|
+
old_monitor = @monitor
|
636
|
+
@monitor = {:desc => "Adding field #{ names * ", " }"} if TrueClass === monitor
|
637
|
+
|
638
|
+
through do |key, values|
|
639
|
+
new_values = yield(key, values)
|
640
|
+
|
641
|
+
case type
|
642
|
+
when :double
|
643
|
+
new_values = new_values.collect{|v| [v] } if Array === new_values and new_values.first and not Array === new_values.first
|
644
|
+
values += new_values
|
645
|
+
when :list
|
646
|
+
values += new_values
|
647
|
+
end
|
648
|
+
|
649
|
+
self[key] = values
|
650
|
+
end
|
651
|
+
@monitor = old_monitor
|
652
|
+
|
653
|
+
if not fields.nil? and not (names.nil? or names.empty?)
|
654
|
+
new_fields = self.fields + names
|
655
|
+
self.fields = new_fields
|
656
|
+
end
|
657
|
+
|
658
|
+
self
|
659
|
+
end
|
660
|
+
|
661
|
+
|
634
662
|
def transpose(key_field="Unkown ID")
|
635
663
|
raise "Transposing only works for TSVs of type :list" unless type == :list
|
636
664
|
new_fields = keys
|
@@ -276,7 +276,7 @@ module Misc
|
|
276
276
|
end
|
277
277
|
end
|
278
278
|
|
279
|
-
def self.bootstrap(elems, num = :current, file = nil, &block)
|
279
|
+
def self.bootstrap(elems, num = :current, file = nil, options = {}, &block)
|
280
280
|
num = :current if num.nil?
|
281
281
|
cpus = case num
|
282
282
|
when :current
|
@@ -291,8 +291,11 @@ module Misc
|
|
291
291
|
end
|
292
292
|
end
|
293
293
|
|
294
|
+
|
295
|
+
options = Misc.add_defaults options, :cpus => cpus, :bar => "Bootstrap in #{ cpus } cpus: #{ Misc.fingerprint Annotated.purge(elems) }", :into => Set.new
|
296
|
+
|
294
297
|
index = (0..elems.length-1).to_a.collect{|v| v.to_s }
|
295
|
-
TSV.traverse index,
|
298
|
+
TSV.traverse index, options do |pos|
|
296
299
|
elem = elems[pos.to_i]
|
297
300
|
elems.annotate elem if elems.respond_to? :annotate
|
298
301
|
begin
|
@@ -81,7 +81,7 @@ class Step
|
|
81
81
|
end
|
82
82
|
|
83
83
|
begin
|
84
|
-
@info_cache = Misc.insist(
|
84
|
+
@info_cache = Misc.insist(3, 1.6, info_file) do
|
85
85
|
Misc.insist(2, 1, info_file) do
|
86
86
|
Misc.insist(3, 0.2, info_file) do
|
87
87
|
raise TryAgain, "Info locked" if check_lock and info_lock.locked?
|
@@ -97,7 +97,7 @@ class Step
|
|
97
97
|
rescue Exception
|
98
98
|
Log.debug{"Error loading info file: " + info_file}
|
99
99
|
Log.exception $!
|
100
|
-
|
100
|
+
Misc.sensiblewrite(info_file, INFO_SERIALIAZER.dump({:status => :error, :messages => ["Info file lost"]}))
|
101
101
|
raise $!
|
102
102
|
end
|
103
103
|
end
|
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.14.
|
4
|
+
version: 5.14.38
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Vazquez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|