nanook 0.6.0 → 0.6.3
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 +4 -4
- data/.circleci/config.yml +1 -1
- data/.rspec +1 -0
- data/Gemfile.lock +4 -1
- data/README.md +5 -1
- data/lib/nanook.rb +2 -12
- data/lib/nanook/block.rb +12 -8
- data/lib/nanook/node.rb +14 -0
- data/lib/nanook/rpc.rb +0 -2
- data/lib/nanook/version.rb +1 -1
- data/nanook.gemspec +1 -0
- metadata +16 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 38e4a248c6ea62d44a35964f3f06287cfead6987
|
4
|
+
data.tar.gz: 02eadb7cf364bcadddceec3983af2fce00ff669b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 89a7f7be437584c723f121440d4c771805466a1d1447e1368d83a79e39d9048317dbf0f3d83b75121ec664a995ba19f8f331135322564bd146804b408a88d13b
|
7
|
+
data.tar.gz: 41d112321008ed82fb4c4be00cb1fe343c7bc385b25b240d1eb2ca7103fa1fc9496aa4a28548fde665dd239a4df4746e85410b31e609c83ea0379378529501a7
|
data/.circleci/config.yml
CHANGED
@@ -46,7 +46,7 @@ jobs:
|
|
46
46
|
command: |
|
47
47
|
mkdir /tmp/test-results
|
48
48
|
|
49
|
-
bundle exec rspec spec --format progress --out /tmp/test-results/rspec.xml
|
49
|
+
bundle exec rspec spec --format progress --format RspecJunitFormatter --out /tmp/test-results/rspec.xml
|
50
50
|
|
51
51
|
# collect reports
|
52
52
|
- store_test_results:
|
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--require spec_helper
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
nanook (0.6.
|
4
|
+
nanook (0.6.3)
|
5
5
|
symbolized
|
6
6
|
|
7
7
|
GEM
|
@@ -28,6 +28,8 @@ GEM
|
|
28
28
|
diff-lcs (>= 1.2.0, < 2.0)
|
29
29
|
rspec-support (~> 3.7.0)
|
30
30
|
rspec-support (3.7.1)
|
31
|
+
rspec_junit_formatter (0.3.0)
|
32
|
+
rspec-core (>= 2, < 4, != 2.12.0)
|
31
33
|
safe_yaml (1.0.4)
|
32
34
|
symbolized (0.0.1)
|
33
35
|
webmock (3.3.0)
|
@@ -43,6 +45,7 @@ DEPENDENCIES
|
|
43
45
|
nanook!
|
44
46
|
rake (~> 10.0)
|
45
47
|
rspec (~> 3.2)
|
48
|
+
rspec_junit_formatter
|
46
49
|
webmock (~> 3.3)
|
47
50
|
|
48
51
|
BUNDLED WITH
|
data/README.md
CHANGED
@@ -238,8 +238,12 @@ node.bootstrap(address: "::ffff:138.201.94.249", port: 7075)
|
|
238
238
|
node.frontier_count
|
239
239
|
node.peers
|
240
240
|
node.representatives
|
241
|
-
node.
|
241
|
+
node.representatives
|
242
|
+
node.sync_progress
|
243
|
+
node.synced?
|
242
244
|
node.version
|
245
|
+
|
246
|
+
node.stop
|
243
247
|
```
|
244
248
|
|
245
249
|
### Work peers
|
data/lib/nanook.rb
CHANGED
@@ -1,21 +1,11 @@
|
|
1
1
|
require 'net/http'
|
2
2
|
require 'uri'
|
3
3
|
|
4
|
-
|
5
|
-
require 'nanook/block'
|
6
|
-
require 'nanook/error'
|
7
|
-
require 'nanook/key'
|
8
|
-
require 'nanook/node'
|
9
|
-
require 'nanook/rpc'
|
10
|
-
require 'nanook/util'
|
11
|
-
require 'nanook/version'
|
12
|
-
require 'nanook/wallet_account'
|
13
|
-
require 'nanook/wallet'
|
14
|
-
require 'nanook/work_peer'
|
4
|
+
Dir[File.dirname(__FILE__) + '/nanook/*.rb'].each {|file| require file }
|
15
5
|
|
16
6
|
class Nanook
|
17
7
|
|
18
|
-
def initialize(uri=Nanook::Rpc::DEFAULT_URI, timeout:Nanook::Rpc::
|
8
|
+
def initialize(uri=Nanook::Rpc::DEFAULT_URI, timeout:Nanook::Rpc::DEFAULT_TIMEOUT)
|
19
9
|
@rpc = Nanook::Rpc.new(uri, timeout: timeout)
|
20
10
|
end
|
21
11
|
|
data/lib/nanook/block.rb
CHANGED
@@ -31,18 +31,14 @@ class Nanook
|
|
31
31
|
if allow_unchecked
|
32
32
|
# TODO not actually sure what this response looks like when it's not an unchecked block, assuming its blank
|
33
33
|
response = rpc(:unchecked_get, :hash)
|
34
|
-
|
34
|
+
if response[:error] != "Block not found"
|
35
|
+
return _parse_info_response(response )
|
36
|
+
end
|
35
37
|
# Continue on falling backto checked block
|
36
38
|
end
|
37
39
|
|
38
40
|
response = rpc(:block, :hash)
|
39
|
-
|
40
|
-
# The contents is a stringified JSON
|
41
|
-
if response[:contents]
|
42
|
-
response[:contents] = JSON.parse(response[:contents])
|
43
|
-
end
|
44
|
-
|
45
|
-
response
|
41
|
+
_parse_info_response(response)
|
46
42
|
end
|
47
43
|
|
48
44
|
def is_valid_work?(work)
|
@@ -93,5 +89,13 @@ class Nanook
|
|
93
89
|
end
|
94
90
|
end
|
95
91
|
|
92
|
+
def _parse_info_response(response)
|
93
|
+
# The contents is a stringified JSON
|
94
|
+
if response[:contents]
|
95
|
+
response[:contents] = JSON.parse(response[:contents])
|
96
|
+
end
|
97
|
+
response
|
98
|
+
end
|
99
|
+
|
96
100
|
end
|
97
101
|
end
|
data/lib/nanook/node.rb
CHANGED
@@ -37,6 +37,20 @@ class Nanook
|
|
37
37
|
rpc(:stop)
|
38
38
|
end
|
39
39
|
|
40
|
+
def sync_progress
|
41
|
+
response = rpc(:block_count)
|
42
|
+
|
43
|
+
count = response[:count]
|
44
|
+
unchecked = response[:unchecked]
|
45
|
+
total = count + unchecked
|
46
|
+
|
47
|
+
count.to_f * 100 / total.to_f
|
48
|
+
end
|
49
|
+
|
50
|
+
def synced?
|
51
|
+
rpc(:block_count)[:unchecked] == 0
|
52
|
+
end
|
53
|
+
|
40
54
|
def version
|
41
55
|
rpc(:version)
|
42
56
|
end
|
data/lib/nanook/rpc.rb
CHANGED
data/lib/nanook/version.rb
CHANGED
data/nanook.gemspec
CHANGED
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.add_development_dependency "bundler", "~> 1.16"
|
25
25
|
spec.add_development_dependency "rake", "~> 10.0"
|
26
26
|
spec.add_development_dependency "rspec", "~> 3.2"
|
27
|
+
spec.add_development_dependency "rspec_junit_formatter"
|
27
28
|
spec.add_development_dependency "webmock", "~> 3.3"
|
28
29
|
|
29
30
|
spec.add_dependency "symbolized"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nanook
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luke Duncalfe
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.2'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec_junit_formatter
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: webmock
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -90,6 +104,7 @@ extra_rdoc_files: []
|
|
90
104
|
files:
|
91
105
|
- ".circleci/config.yml"
|
92
106
|
- ".gitignore"
|
107
|
+
- ".rspec"
|
93
108
|
- Gemfile
|
94
109
|
- Gemfile.lock
|
95
110
|
- LICENSE.txt
|