rbbt-util 5.13.7 → 5.13.8

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
  SHA1:
3
- metadata.gz: a7fb14a033052fa9f9e469e40ab600e40dfa6f90
4
- data.tar.gz: 38a1246aae816a12634ee5681954c11beac3c9af
3
+ metadata.gz: e7281b74a41b34bf9cc71d351b6ca175a40f8aeb
4
+ data.tar.gz: 6f31f788281e74e00b594e9ff0303ccf0cddb491
5
5
  SHA512:
6
- metadata.gz: f55bd2c2fbdd1815df354e7b6bf56c6ef5ec2383acc5ead9fba128ba23048c979bf54a8a1c90392c6982c99e80beebf2a45f5c4f7fef8832aa4a3853292afacc
7
- data.tar.gz: f515c4276f796c56826412ffffc23856b221d76be923dc8655234dc1e0cb92781028cc9b0d1e2c92b049724aaaa889b61e4eb79d7e27cca8451fd8749a521051
6
+ metadata.gz: 7faad521cd49f6079fc8db95d49ad2d60dfda58f0ba99ee2f7249dcc519b3967df2c1a8cbe09f6de6af8d31c219233b3181ca7b70b859383885f335d7e13d80d
7
+ data.tar.gz: c218eb43aaaee50d7fb41c08d55b99b5615243e7c9f38bf6d1c499ee1766486c0f4e1cd21edd01389525747714f50669c35d6a120aab7e01c1011dd1410fd216
@@ -28,7 +28,7 @@ module TSV
28
28
  when Path
29
29
  CMD.cmd("wc -l '#{obj.find}'").read.to_i
30
30
  end
31
- rescue
31
+ rescue Exception
32
32
  nil
33
33
  end
34
34
  end
@@ -496,7 +496,6 @@ module TSV
496
496
  desc = monitor[:desc] if monitor.include? :desc
497
497
  step = monitor[:step] if monitor.include? :step
498
498
  end
499
- #progress_monitor = Progress::Bar.new(size, 0, step, desc)
500
499
  progress_monitor = Log::ProgressBar.new(size, :desc => desc)
501
500
  else
502
501
  progress_monitor = nil
@@ -207,7 +207,7 @@ class Step
207
207
  end
208
208
 
209
209
  def started?
210
- Open.exists? info_file
210
+ Open.exists? info_file or Open.exists? path
211
211
  end
212
212
 
213
213
  def done?
@@ -15,7 +15,7 @@ class Step
15
15
  Log.medium "Not duplicating stream #{ Misc.fingerprint(stream) }"
16
16
  STREAM_CACHE[stream] = stream
17
17
  when File
18
- if true or current.closed?
18
+ if Open.exists? current.filename
19
19
  Log.medium "Reopening file #{ Misc.fingerprint(current) }"
20
20
  Open.open(current.filename)
21
21
  else
@@ -136,7 +136,7 @@ class Step
136
136
  @seen.each do |dependency|
137
137
  next if dependency == self
138
138
  next unless dependencies.include? dependency
139
- Log.info "#{Log.color :magenta, "Checking dependency"} #{Log.color :yellow, task.name.to_s || ""} => #{Log.color :yellow, dependency.task_name.to_s || ""} -- #{Log.color :blue, dependency.path}"
139
+ Log.info "#{Log.color :cyan, "dependency"} #{Log.color :yellow, task.name.to_s || ""} => #{Log.color :yellow, dependency.task_name.to_s || ""} -- #{Log.color :blue, dependency.path}"
140
140
  begin
141
141
  if dependency.streaming?
142
142
  next if dependency.running?
@@ -184,7 +184,7 @@ class Step
184
184
 
185
185
  Open.rm info_file if Open.exists? info_file
186
186
 
187
- log :setup, "#{Log.color :green, "Task"} #{Log.color :yellow, task.name.to_s || ""}"
187
+ log :setup, "#{Log.color :magenta, "Task"} #{Log.color :yellow, task.name.to_s || ""}"
188
188
 
189
189
  merge_info({
190
190
  :pid => Process.pid,
@@ -234,12 +234,12 @@ class Step
234
234
  case result
235
235
  when IO
236
236
 
237
- log :streaming, "#{Log.color :magenta, "Streaming task result IO"} #{Log.color :yellow, task.name.to_s || ""} [#{Process.pid}]"
237
+ log :streaming, "#{Log.color :magenta, "Streaming IO"} #{Log.color :yellow, task.name.to_s || ""} [#{Process.pid}]"
238
238
  ConcurrentStream.setup result do
239
239
  begin
240
240
  set_info :done, (done_time = Time.now)
241
241
  set_info :time_elapsed, (time_elapsed = done_time - start_time)
242
- log :done, "#{Log.color :red, "Completed task"} #{Log.color :yellow, task.name.to_s || ""} [#{Process.pid}] +#{time_elapsed.to_i} -- #{path}"
242
+ log :done, "#{Log.color :red, "Completed"} #{Log.color :yellow, task.name.to_s || ""} [#{Process.pid}] +#{time_elapsed.to_i} -- #{path}"
243
243
  rescue
244
244
  Log.exception $!
245
245
  ensure
@@ -256,7 +256,7 @@ class Step
256
256
  end
257
257
  end
258
258
  when TSV::Dumper
259
- log :streaming, "#{Log.color :magenta, "Streaming task result TSV::Dumper"} #{Log.color :yellow, task.name.to_s || ""} [#{Process.pid}]"
259
+ log :streaming, "#{Log.color :magenta, "Streaming TSV::Dumper"} #{Log.color :yellow, task.name.to_s || ""} [#{Process.pid}]"
260
260
  ConcurrentStream.setup result.stream do
261
261
  begin
262
262
  set_info :done, (done_time = Time.now)
@@ -0,0 +1,64 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rbbt-util'
4
+ require 'rbbt/util/simpleopt'
5
+
6
+ options = SOPT.setup <<EOF
7
+ Read a TSV file and dump it
8
+
9
+ $ rbbt tsv read [options] <filename.tsv|->
10
+
11
+ Use - to read from STDIN
12
+
13
+ -k--key_field* Key field
14
+ -f--fields* Fields
15
+ -t--type* Type
16
+ -m--merge* Merge from multiple rows
17
+ -h--help Print this help
18
+
19
+ EOF
20
+ rbbt_usage and exit 0 if options[:help]
21
+
22
+ file = ARGV.shift
23
+
24
+ file = STDIN if file == '-'
25
+
26
+ parser = TSV::Parser.new TSV.get_stream(file), options
27
+
28
+ dumper = TSV::Dumper.new parser.options
29
+
30
+ options[:merge] = false if options[:merge] == "false"
31
+
32
+ Thread.new do
33
+ line = parser.first_line
34
+ bar = Log::ProgressBar.new
35
+ while line
36
+ bar.tick
37
+
38
+ line = Misc.fixutf8(line)
39
+ line = parser.process line
40
+ raise SKIP_LINE if line.empty?
41
+ parts = parser.chop_line line
42
+ key, values = parser.get_values parts
43
+ values = parser.cast_values values if parser.cast?
44
+
45
+ if Array === key
46
+ key.each do |k|
47
+ dumper.add k, values
48
+ end
49
+ line = parser.stream.gets
50
+ else
51
+ dumper.add key, values
52
+ line = parser.stream.gets
53
+ end
54
+ end
55
+ dumper.close
56
+ end
57
+
58
+ dumper.init
59
+ stream = dumper.stream
60
+ stream = TSV.collapse_stream(dumper.stream).stream if options[:merge]
61
+
62
+ while line = stream.gets
63
+ puts line
64
+ 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.13.7
4
+ version: 5.13.8
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-05-08 00:00:00.000000000 Z
11
+ date: 2014-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -250,6 +250,7 @@ files:
250
250
  - share/rbbt_commands/tsv/get
251
251
  - share/rbbt_commands/tsv/info
252
252
  - share/rbbt_commands/tsv/json
253
+ - share/rbbt_commands/tsv/read
253
254
  - share/rbbt_commands/tsv/slice
254
255
  - share/rbbt_commands/tsv/sort
255
256
  - share/rbbt_commands/tsv/subset