rbbt-util 5.34.16 → 5.34.18

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
2
  SHA256:
3
- metadata.gz: 5b76f18c79a3b52708203f69eb7cd9baff8cb07feb2a4b26850094cfda9b9edc
4
- data.tar.gz: 8511317ae202283e8138746485e74d39b28881b78b85539c521e94309337782e
3
+ metadata.gz: 7908cbea1335046bacccf47660d8856ca1a0b0cca90ab485016db0a1f69ddbb3
4
+ data.tar.gz: ef217b34b1a3ca47405a3a58f77975a4e9395d9977b2d03bf4cea2c015a566bb
5
5
  SHA512:
6
- metadata.gz: 71dd9c6806e8129fa08b466ddd3e8ea7172a0938000f399b030ef89a5f40321b08f24f6b98ba823ac72317460f45dbc9a8fc88c65899582766a542fde55adb24
7
- data.tar.gz: 0b6d4b0aea41c92161193ffb379ee86e44715298ebf6d26d585ffb6292ae89a77e82a9764f07630106510c45bc5b56193b716de9edd71ed52cb4046f711d2e24
6
+ metadata.gz: 56b7b51a7291715af3af357d58166b82aeae89fc70ad2e68d854a2beec2ee0dd253319f1d785303454bb06245603c2b798112c403324a1a5c829cb86a0ef2a34
7
+ data.tar.gz: 906cfaf9ca2945cf68214b04d15b67c19ce8551f626ea65379d562e7059edd0d16b9b07bc6eec5889249050ba89fbc1da54c612599f44aed557ec6d32610e4af
@@ -136,7 +136,8 @@ module AssociationItem
136
136
  end
137
137
 
138
138
  property :filter => :array do |*args,&block|
139
- keys = tsv.with_unnamed do tsv.select(*args,&block).keys end
139
+ block = args.pop if Proc === args.last
140
+ keys = tsv.with_unnamed do tsv.select(*args, &block).keys end
140
141
  keys = self.annotate keys
141
142
  keys
142
143
  end
data/lib/rbbt/entity.rb CHANGED
@@ -158,23 +158,23 @@ module Entity
158
158
  when :single, :single2array
159
159
  single_name = "_single_" << name
160
160
  define_method single_name, &block
161
- define_method name do |*args|
161
+ define_method name do |*args, &block|
162
162
  if Array === self
163
163
  res = self.collect{|e| e.send(single_name, *args)}
164
164
  res.first.annotate(res) if Annotated === res.first && type == :single2array
165
165
  res
166
166
  else
167
- self.send(single_name, *args)
167
+ self.send(single_name, *args, &block)
168
168
  end
169
169
  end
170
170
  when :array, :array2single
171
171
  ary_name = "_ary_" << name
172
172
  define_method ary_name, &block
173
173
 
174
- define_method name do |*args|
174
+ define_method name do |*args, &block|
175
175
  case
176
176
  when Array === self
177
- self.send(ary_name, *args)
177
+ self.send(ary_name, *args, &block)
178
178
  when (Array === self.container and not self.container_index.nil? and self.container.respond_to? ary_name)
179
179
  cache_code = Misc.hash2md5({:name => ary_name, :args => args})
180
180
  res = (self.container._ary_property_cache[cache_code] ||= self.container.send(name, *args))
@@ -184,7 +184,7 @@ module Entity
184
184
  res[self.container_index]
185
185
  end
186
186
  else
187
- res = self.make_list.send(ary_name, *args)
187
+ res = self.make_list.send(ary_name, *args, &block)
188
188
  Hash === res ? res[self] : res[0]
189
189
  end
190
190
  end
@@ -23,7 +23,7 @@ class KnowledgeBase
23
23
  entity_options = self.entity_options
24
24
  IndiferentHash.setup entity_options if entity_options and not IndiferentHash === entity_options
25
25
  options = entity_options[type.to_s] || entity_options[Entity.formats[type.to_s].to_s] || {}
26
- options[:format] = @format[type] if @format.include? :type
26
+ options[:format] = @format[type] if Hash === @format && @format.include?(type)
27
27
  namespace = self.namespace
28
28
  namespace = db_namespace(database_name) if namespace.nil? and database_name
29
29
  options = {:organism => namespace}.merge(options)
@@ -354,7 +354,7 @@ module Path
354
354
 
355
355
  def yaml
356
356
  self.open do |f|
357
- YAML.load f
357
+ YAML.unsafe_load f
358
358
  end
359
359
  end
360
360
 
data/lib/rbbt/resource.rb CHANGED
@@ -71,6 +71,10 @@ module Resource
71
71
  end
72
72
  end
73
73
 
74
+ def claims
75
+ resources.keys.collect{|path| path.sub(subdir, '').sub(/^\//,'') }
76
+ end
77
+
74
78
  attr_accessor :server_missing_resource_cache
75
79
  def get_from_server(path, final_path, remote_server = nil)
76
80
  remote_server ||= self.remote_server
data/lib/rbbt/tsv/util.rb CHANGED
@@ -377,7 +377,7 @@ module TSV
377
377
  return self
378
378
  when :list
379
379
  through do |k,v|
380
- new[k] = v.first
380
+ new[k] = v.nil? ? nil : v.first
381
381
  end
382
382
  end
383
383
  end
@@ -35,7 +35,7 @@ module Misc
35
35
  v_range = v_max - v_min
36
36
  range = max.to_f - min.to_f
37
37
 
38
- v.collect{|e| min + range * (e.to_f - v_min) / v_range }
38
+ v.collect{|e| (e.nil? || e.nan?) ? e : min + range * (e.to_f - v_min) / v_range }
39
39
  end
40
40
 
41
41
  def self.sum(list)
@@ -493,7 +493,7 @@ class Step
493
493
  begin Exception
494
494
  execute_and_dup(step, dep_step)
495
495
  rescue
496
- raise $! unless canfail_paths.include? step.path
496
+ raise $! unless canfail_paths.include?(step.path)
497
497
  end
498
498
  end
499
499
 
@@ -87,5 +87,25 @@ class TestProgress < Test::Unit::TestCase
87
87
  end
88
88
  end
89
89
 
90
+ def test_file
91
+ size = 10000
92
+
93
+ TmpFile.with_file do |file|
94
+
95
+ Log::ProgressBar.with_bar(size, :desc => "Bar 1", :file => file) do |bar|
96
+ bar.init
97
+ nums = []
98
+ 100.times do
99
+ nums << rand(size)
100
+ end
101
+ nums.sort.each do |num|
102
+ bar.pos num
103
+ sleep 0.1
104
+ end
105
+ bar.tick
106
+ end
107
+ end
108
+ end
109
+
90
110
  end
91
111
 
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.34.16
4
+ version: 5.34.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-05 00:00:00.000000000 Z
11
+ date: 2022-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake