neo4j_bolt 0.1.19 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 86ad5aab74c229aae91b92fc0208e657ed01088748d2dddeb2dcd724448738aa
4
- data.tar.gz: 98d624ea568d4ff7c51b60748178849e519aa51920bad978231e5b8bfd8cb27f
3
+ metadata.gz: a9a8c751fcbc86ea589cc9b1dc081f1cd51c6867e43c2c7804cb7c2e8edc480b
4
+ data.tar.gz: 79253cb239133cef01a256cab30cf4e0e58e85a4feeb91d6e4cfba4c958f95cc
5
5
  SHA512:
6
- metadata.gz: 87236b4c209bdc6955f823b0f54ef3f5b468defdbe17df709b17ade15f2e43585bb579951fa048e622b30fb1af3b4e70a39066766c75a202bdb8f100b900d6bc
7
- data.tar.gz: 18ebf06325a9f833bd93af32a3dab8b79ebc755a054908202b800fd5d0124f2132ff1680e9a03583e159bd35bd3c518fba95f9ddd5fd4bb039f3b601b6aaa9e5
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.19)
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.19"
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
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.19
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-11-03 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