depviz 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/lib/depviz.rb +31 -6
  5. metadata +39 -35
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 05ada6d7a48c5f347acc4eab8947406b53d1b01966809b6fedb1ba7a7367c573
4
- data.tar.gz: 8d4bc6609bd75a80b5f57f2f734b76d5f28a503b045947e43c08799375fc88cf
3
+ metadata.gz: dce62cfb73633debf25de501d335336bda15d3ecdc77d8f781b444d5677773ab
4
+ data.tar.gz: b55d6679b1b84c5226300fb63daaf8970aba542273d94546273c66f1cb3837c1
5
5
  SHA512:
6
- metadata.gz: 6dc83fc3c3743fd1fb3c91023a574da6c49a7c29114c47717d2d5f1bab50c5c5f3034d45882d93b951167e06d5598ea302a051eaa986f648885905acb10b8081
7
- data.tar.gz: d457c0dc75540fb146b5403c34df33ff38bc0a4de1d9dfb2dc16fbb86513dc93a8c692be4973718a34295954c70165ec9a9df70621a11cde0ccb8c37a45a04f6
6
+ metadata.gz: ce40cb2e3764138131d09a05c569ec84967a78a24694419b4704a153fef1d1821640289174e854fa7040a4d4e364d8aad8a9ad3e34648689c5ec705b7f1ad924
7
+ data.tar.gz: 47d6b94ce2a706c47b3cc1eacda2a158e358bba79963413125440e10d0851f7b977c32781e275164effd10df46149b674a8e006fa7d3720194f598336f9cb6ba
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
data/lib/depviz.rb CHANGED
@@ -27,14 +27,38 @@ class DepViz
27
27
  a = LineTree.new(@s).to_doc.root.xpath('//' + @name)
28
28
  puts 'dep: a: ' + a.inspect if @debug
29
29
 
30
+ enclose = ->(a) do
31
+ a.length > 1 ? [a.first] << enclose.call(a[1..-1]) : a
32
+ end
33
+
30
34
  a2 = a.map do |x|
31
35
  puts ' dependencies x: ' + x.inspect if @debug
32
- x.backtrack.to_s.split('/')[1..-1]
36
+ enclose.call x.backtrack.to_s.split('/')[1..-1]
33
37
  end
38
+
34
39
  puts 'a2: ' + a2.inspect if @debug
35
40
 
36
- s = a2.map {|x| x.map.with_index {|y,i| ' ' * i + y }.join("\n")}\
37
- .join("\n")
41
+ # group the items in order to merge branches with the same parent
42
+ a3 = a2.group_by(&:first)
43
+ a4 = a3.map {|x| [x.first] + x.last.map(&:last)}
44
+
45
+ treeize = ->(obj, indent=-2) do
46
+
47
+ if obj.is_a? Array then
48
+
49
+ r = obj.map {|x| treeize.call(x, indent+1)}.join("\n")
50
+ puts 'r: ' + r.inspect if @debug
51
+ r
52
+
53
+ else
54
+
55
+ ' ' * indent + obj
56
+
57
+ end
58
+ end
59
+
60
+ s = treeize.call(a4)
61
+
38
62
  puts 'child s: ' + s.inspect if @debug
39
63
 
40
64
  dv3 = DepViz.new()
@@ -43,6 +67,8 @@ class DepViz
43
67
 
44
68
  end
45
69
 
70
+ # returns a DepViz document
71
+ #
46
72
  def reverse_dependencies()
47
73
 
48
74
  a = LineTree.new(@s, root: @root).to_doc.root.xpath('//' + @name)
@@ -67,9 +93,8 @@ class DepViz
67
93
  <?polyrex schema='items[type]/item[label]' delimiter =' # '?>
68
94
  type: digraph
69
95
 
70
- "
71
-
72
- build(s)
96
+ "
97
+ @s = build(s)
73
98
 
74
99
 
75
100
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: depviz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,27 +10,32 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDXjCCAkagAwIBAgIBATANBgkqhkiG9w0BAQUFADAsMSowKAYDVQQDDCFnZW1t
14
- YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMTgwMTIxMTkyMzE2WhcN
15
- MTkwMTIxMTkyMzE2WjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
- cnRzb24vREM9ZXUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQ3L67
17
- 8183BAMBswfY/06QuC63URRc8KHhoCfFC+3DE5h+bSycpUnu4lJ44QvFi1fycMmm
18
- 2HchCK0cLDX9ZxOqSO4YJWmh99TmA8nvqIDfe0hFx5Zcrn/b6SdKaUOxv6rWpvPw
19
- OfF3YjaHkeAvgar0xYvagUKESSKLr0Pbc/a7gJKaVZkHJFbnoyEguLYut6OpEEPP
20
- M78+Mtai/tFbVRwhDmid2BHZS57+4kTXFuA4UqePNVyXt8mrtic1vgNKbsQ0nSbJ
21
- t9QgEaqEAGSCkFye6b+dx8WVgq0MAchgQ2tvQhifzqRqtmEOhzf0785yKxNEHsDt
22
- F49kONjTsDQXtJd5AgMBAAGjgYowgYcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
23
- HQYDVR0OBBYEFGsQrpJ6RZLNIpwQeKMZLs8ZbFFaMCYGA1UdEQQfMB2BG2dlbW1h
24
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTAmBgNVHRIEHzAdgRtnZW1tYXN0ZXJAamFt
25
- ZXNyb2JlcnRzb24uZXUwDQYJKoZIhvcNAQEFBQADggEBAGT7n8qvDZb8tAeB600O
26
- a054HpBNHLJ/HxbMyv+gE2n7yDg3D4sR2X6ekQVW8Rg6emZAhDWa+dREHzL2j+dp
27
- hU13ewBbz3Oh2+M7+AsLWlp6lB1CwJ/HBaC7ePq2ijbDd8OpJaTRCDh/ICH6vkfm
28
- otS5scbDgYhQ2MmW2beylEznx9C+GhixFVcxWIDikknpEUvoOYoJalM0a8x5I7JG
29
- R/eJT/8JSL1Sz0ywBXzMSh8mBjYP5EkovU82TyiYbg0kJ7PSNIM2vb0x/VAO9LCY
30
- TCqBEF2WnZz6KeKywr1qQSkgenmZJAIRJf6Yc2GlE/o9rTHz+kWZGg9ZvB3AU6qZ
31
- 2QY=
13
+ MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMTkwNjAzMDk1MzQ0WhcN
15
+ MjAwNjAyMDk1MzQ0WjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCRYbn1
17
+ Fxt/3nQfM/79qO2UuuUlR3kCV5irj0biTNxf4JtjzVV8yrXziAAeISrFHyuYEtic
18
+ i9MttV6DEW8TImuGj6f6Oqlw/A/RzzQjn7GtcL1d7neBK9W1J3KgJ1JXvrTIdyWv
19
+ 5PzQccRu1BWJBA1oLn0mU9/wfanuIpJv9Vbb9JkD+KVNltBwu3umDrxlLx7Sswyb
20
+ bVa3paStxaUQ68Czk2En37NGi4Fklm9B0vA0MQIAbk6SzJam2DW4Q3kY0xD8XW+M
21
+ OHu7kWa2fWZgNyJ8HKKuoSHoEUX1hQi8RLhl6RCd7XMvgHOcXz/RkpEslo2y7JL8
22
+ I6j0hgWreGD+2UX0/It/YGxP4ZuYURSLo3b51VCxG/ZucXap9q9fdL9yo0Q04La3
23
+ RdiwYfK8yT01Q2aka10FDm/pP3X3eAStU3j3OBIi5fOkmstRcVfwlZo3G+oKiSCN
24
+ jYa/SWlgplC2QYFV82wkl30HLoLTXQfOnMzcDqGwPrJs6uAHI+tN7pqWy2kCAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUDZKHaZW1
26
+ sIg3/fJWq3G53WHv2rAwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
+ c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
+ BgkqhkiG9w0BAQsFAAOCAYEAeBSpoASLXnbaBavcGV4U5cFztowi8X7A36mKQErU
29
+ M9WO2rSA1tKXRPCgbIXxDOjfSvIeElIOiCt3pOxUoh6hOdW74NJrouhE3SD+SaSD
30
+ 2DA9KfXiX1mX95ab0fZkdDQgMGFaaoO1FUl36iSsZFU07dBVEYJAn5qm4UjQpJw3
31
+ 7Zyr65t7l+gKktE7SK7Lz8bNcP+z7axdilCst21q0J3u0gEye917Xo/O53nzDNFY
32
+ FOnC3DQL7rPfXbHvtUh/pdI0VxYHqEbvAm7yU8MtknlBiDLDomSUGTqMRLXHzMDm
33
+ LY3ynRaBjiMdQYyXTDZMtrEiPBiWA3kiX0LSJmrVlHBUz+QCncMTvisHBndUgTqk
34
+ 49JLHdNSx+oB1JJWVUYG3mdKOvfmmdoGOi1tno8iO7x7Q2k3Sq/h4ePeVvkQJhyG
35
+ zoPaOSt4xoowKqommO0RHQimrbPQWds1bnkTc//n7y6ALRc9fqvN/8MJHf0wpUja
36
+ dsRU+5pPlIOwJbnDyYzEZrS9
32
37
  -----END CERTIFICATE-----
33
- date: 2018-10-15 00:00:00.000000000 Z
38
+ date: 2019-06-03 00:00:00.000000000 Z
34
39
  dependencies:
35
40
  - !ruby/object:Gem::Dependency
36
41
  name: pxgraphviz
@@ -56,42 +61,42 @@ dependencies:
56
61
  name: dependency_builder
57
62
  requirement: !ruby/object:Gem::Requirement
58
63
  requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '0.1'
62
64
  - - ">="
63
65
  - !ruby/object:Gem::Version
64
66
  version: 0.1.0
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '0.1'
65
70
  type: :runtime
66
71
  prerelease: false
67
72
  version_requirements: !ruby/object:Gem::Requirement
68
73
  requirements:
69
- - - "~>"
70
- - !ruby/object:Gem::Version
71
- version: '0.1'
72
74
  - - ">="
73
75
  - !ruby/object:Gem::Version
74
76
  version: 0.1.0
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '0.1'
75
80
  - !ruby/object:Gem::Dependency
76
81
  name: xml_to_sliml
77
82
  requirement: !ruby/object:Gem::Requirement
78
83
  requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '0.1'
82
84
  - - ">="
83
85
  - !ruby/object:Gem::Version
84
86
  version: 0.1.0
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.1'
85
90
  type: :runtime
86
91
  prerelease: false
87
92
  version_requirements: !ruby/object:Gem::Requirement
88
93
  requirements:
89
- - - "~>"
90
- - !ruby/object:Gem::Version
91
- version: '0.1'
92
94
  - - ">="
93
95
  - !ruby/object:Gem::Version
94
96
  version: 0.1.0
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '0.1'
95
100
  description:
96
101
  email: james@jamesrobertson.eu
97
102
  executables: []
@@ -118,8 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
123
  - !ruby/object:Gem::Version
119
124
  version: '0'
120
125
  requirements: []
121
- rubyforge_project:
122
- rubygems_version: 2.7.6
126
+ rubygems_version: 3.0.1
123
127
  signing_key:
124
128
  specification_version: 4
125
129
  summary: Generates a complete dependency tree from disparate dependencies to an SVG
metadata.gz.sig CHANGED
Binary file