neo4j_bolt 0.1.18 → 0.1.20

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: 214be7bfbfff08d77b105b46f042871ebf5863a6b7ab1e7567d81e57673f7d60
4
- data.tar.gz: 353f54f94eb117667c6adc1bc5c613aa4fb79cb3f63e3a381ee0dfa1935064bd
3
+ metadata.gz: a9a8c751fcbc86ea589cc9b1dc081f1cd51c6867e43c2c7804cb7c2e8edc480b
4
+ data.tar.gz: 79253cb239133cef01a256cab30cf4e0e58e85a4feeb91d6e4cfba4c958f95cc
5
5
  SHA512:
6
- metadata.gz: 7ddc037b8c6a67f203f570433f78d66eb49b4960e759dd3ef03884d867fee7d5129940f62dc4b0454768cb2a167c03aed528f435888b56aa0e9f3f3283f07d02
7
- data.tar.gz: e14b86abf0fec20eb87856aa4c6f0f2372d7c5b01f63eb93698ae15294645ddb81096bce24057b2dc6603e5ea8d86d6ee2c356db83e430d6e54a4a0a3cacf51e
6
+ metadata.gz: d9ebcd6511435293e239bcade4d6e8dd643192837a3222f9b057eb8854c1382c879c520a10491de40672e05b08e706669d76309a7ae443015dadd1c90262fe36
7
+ data.tar.gz: 3dd8e6fdb537615aae75021d41ddd2dfb74d09d0bf2b463acdbbd4b5a326b14ab6065c17afbb0c520f0f1b83dd71a98071b5217b80ef8a6623acf55685339d13
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- neo4j_bolt (0.1.17)
4
+ neo4j_bolt (0.1.20)
5
5
  gli
6
6
  pry
7
7
 
@@ -12,7 +12,7 @@ GEM
12
12
  diff-lcs (1.5.0)
13
13
  gli (2.21.0)
14
14
  method_source (1.0.0)
15
- pry (0.14.1)
15
+ pry (0.14.2)
16
16
  coderay (~> 1.1)
17
17
  method_source (~> 1.0)
18
18
  rake (12.3.3)
data/bin/neo4j_bolt CHANGED
@@ -1,5 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ STDERR.puts "ATTENTION, VISUALIZE COMMAND CUT OUT SOME STUFF"
4
+
3
5
  begin
4
6
  require "neo4j_bolt"
5
7
  rescue LoadError
@@ -279,31 +281,31 @@ class App
279
281
  label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='left' colspan='1' rowspan='#{props[lbl][key][:classes].size}'>#{key}#{index_s}</td>"
280
282
  end
281
283
  label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='left' colspan='1'>#{TR[c] || c}</td>"
282
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='1'>#{sprintf('%d%%', props[lbl][key][:counts][c] * 100.0 / counts_for_label[lbl])}</td>"
283
- if props[lbl][key][:sum][c]
284
- mean_s = sprintf('%1.1f', props[lbl][key][:sum][c].to_f / props[lbl][key][:counts][c]).chomp('.0')
285
- min_s = (c == 'float') ? sprintf('%1.1f', props[lbl][key][:min][c]) : props[lbl][key][:min][c]
286
- max_s = (c == 'float') ? sprintf('%1.1f', props[lbl][key][:max][c]) : props[lbl][key][:max][c]
287
- c_is_ts = (c == 'int') && (key.to_s.split(/[^a-zA-Z]+/).any? { |x| x == 'ts' || x == 'timestamp'} )
288
- if c_is_ts
289
- min_s = Time.at(props[lbl][key][:min][c]).strftime('%Y-%m-%d')
290
- max_s = Time.at(props[lbl][key][:max][c]).strftime('%Y-%m-%d')
291
- end
292
- if props[lbl][key][:min][c] == props[lbl][key][:max][c]
293
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='center' colspan='6'>#{min_s}</td>"
294
- else
295
- if c_is_ts
296
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='3'>#{min_s}</td>"
297
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='3'>#{max_s}</td>"
298
- else
299
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='2'>#{min_s}</td>"
300
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='2'>#{mean_s}</td>"
301
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='2'>#{max_s}</td>"
302
- end
303
- end
304
- else
305
- label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='left' colspan='6'></td>"
306
- end
284
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='1'>#{sprintf('%d%%', props[lbl][key][:counts][c] * 100.0 / counts_for_label[lbl])}</td>"
285
+ # if props[lbl][key][:sum][c]
286
+ # mean_s = sprintf('%1.1f', props[lbl][key][:sum][c].to_f / props[lbl][key][:counts][c]).chomp('.0')
287
+ # min_s = (c == 'float') ? sprintf('%1.1f', props[lbl][key][:min][c]) : props[lbl][key][:min][c]
288
+ # max_s = (c == 'float') ? sprintf('%1.1f', props[lbl][key][:max][c]) : props[lbl][key][:max][c]
289
+ # c_is_ts = (c == 'int') && (key.to_s.split(/[^a-zA-Z]+/).any? { |x| x == 'ts' || x == 'timestamp'} )
290
+ # if c_is_ts
291
+ # min_s = Time.at(props[lbl][key][:min][c]).strftime('%Y-%m-%d')
292
+ # max_s = Time.at(props[lbl][key][:max][c]).strftime('%Y-%m-%d')
293
+ # end
294
+ # if props[lbl][key][:min][c] == props[lbl][key][:max][c]
295
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='center' colspan='6'>#{min_s}</td>"
296
+ # else
297
+ # if c_is_ts
298
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='3'>#{min_s}</td>"
299
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='3'>#{max_s}</td>"
300
+ # else
301
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='2'>#{min_s}</td>"
302
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='2'>#{mean_s}</td>"
303
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='right' colspan='2'>#{max_s}</td>"
304
+ # end
305
+ # end
306
+ # else
307
+ # label += "<td border='1' color='#{rel ? '#888888' : '#000000'}' valign='top' align='left' colspan='6'></td>"
308
+ # end
307
309
  label += "</tr>"
308
310
  end
309
311
  end
@@ -318,8 +320,8 @@ class App
318
320
  io.puts 'splines=true;'
319
321
  properties_for_label.keys.sort.each do |lbl|
320
322
  label = "<<table valign='top' align='left' border='0' cellborder='0' cellspacing='0' cellpadding='4'>"
321
- label += "<tr><td border='1' bgcolor='#fce94f' valign='top' align='left' colspan='9'><b>#{lbl}</b>"
322
- label += " <i>(#{counts_for_label[lbl]})</i>"
323
+ label += "<tr><td border='1' bgcolor='#fce94f' valign='top' align='left' colspan='2'><b>#{lbl}</b>"
324
+ # label += " <i>(#{counts_for_label[lbl]})</i>"
323
325
  label += "</td></tr>"
324
326
  label += print_properties.call(properties_for_label, lbl, false)
325
327
  label += "</table>>"
@@ -332,8 +334,8 @@ class App
332
334
  lb = parts[2]
333
335
 
334
336
  label = "<<table valign='top' align='left' border='0' cellborder='0' cellspacing='0' cellpadding='4'>"
335
- label += "<tr><td border='1' color='#888888' bgcolor='#d3d7cf' valign='top' align='left' colspan='9'>#{type}"
336
- label += " <i>(#{counts_for_label[s]})</i>"
337
+ label += "<tr><td border='1' color='#888888' bgcolor='#d3d7cf' valign='top' align='left' colspan='2'>#{type}"
338
+ # label += " <i>(#{counts_for_label[s]})</i>"
337
339
  label += "</td></tr>"
338
340
  label += print_properties.call(properties_for_label, s, true)
339
341
 
@@ -343,10 +345,12 @@ class App
343
345
  cardinality = (counts_for_label[la] > counts_for_label[s]) ?
344
346
  "#{sprintf('%1.1f', counts_for_label[la].to_f / counts_for_label[s]).chomp('.0')}:1" :
345
347
  "1:#{sprintf('%1.1f', counts_for_label[s].to_f / counts_for_label[la]).chomp('.0')}"
348
+ cardinality = ''
346
349
  io.puts "\"#{la}\" -> \"#{s}\" [label = \"#{cardinality}\", fontcolor=\"#888888\"];"
347
350
  cardinality = (counts_for_label[lb] > counts_for_label[s]) ?
348
351
  "1:#{sprintf('%1.1f', counts_for_label[lb].to_f / counts_for_label[s]).chomp('.0')}" :
349
352
  "#{sprintf('%1.1f', counts_for_label[s].to_f / counts_for_label[lb]).chomp('.0')}:1"
353
+ cardinality = ''
350
354
  io.puts "\"#{s}\" -> \"#{lb}\" [label = \"#{cardinality}\", fontcolor=\"#888888\"];"
351
355
  end
352
356
 
@@ -1,3 +1,3 @@
1
1
  module Neo4jBolt
2
- VERSION = "0.1.18"
2
+ VERSION = "0.1.20"
3
3
  end
data/lib/neo4j_bolt.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "neo4j_bolt/version"
2
2
  require 'socket'
3
3
  require 'json'
4
+ require 'set'
4
5
  require 'yaml'
5
6
 
6
7
  module Neo4jBolt
@@ -349,6 +350,8 @@ module Neo4jBolt
349
350
  def append(v)
350
351
  if v.is_a? Array
351
352
  append_array(v)
353
+ elsif v.is_a? Set
354
+ append_array(v.to_a)
352
355
  elsif v.is_a? Hash
353
356
  append_dict(v)
354
357
  elsif v.is_a? String
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: neo4j_bolt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.18
4
+ version: 0.1.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Specht
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-30 00:00:00.000000000 Z
11
+ date: 2023-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec