zold 0.23.7 → 0.23.8
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/lib/zold/commands/remote.rb +5 -2
- data/lib/zold/node/farm.rb +6 -3
- data/lib/zold/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dd1a70efe61838a0cd3e0e4e17ef464d8c6d7791a98d24b5ecbc4ce4a43ef933
|
4
|
+
data.tar.gz: a00d4af1fee0f35b6e32ee8e1f2b0496cc480b61257185a6ac7ff8db5b022207
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: df4eed8f2f359d92b071bc379189b64461fce53f61f77030da4b19fedfe0cd0fdbf6eebbce84919dc8ba0d55eeb22514da0f6494a94baf919de7dbb10653451b
|
7
|
+
data.tar.gz: 7a95d2dd6f095e221776acb5f249f00d4e8864fba49dc1918e893b9a6bb9545930673bda1f52316d1c0cdb55b5549078777e8534c9f3fc9b2d0db82a96eeb665
|
data/lib/zold/commands/remote.rb
CHANGED
@@ -96,6 +96,9 @@ Available options:"
|
|
96
96
|
o.bool '--ignore-masters',
|
97
97
|
'Don\'t elect master nodes, only edges',
|
98
98
|
default: false
|
99
|
+
o.bool '--masters-too',
|
100
|
+
'Give no priviledges to masters, treat them as other nodes',
|
101
|
+
default: false
|
99
102
|
o.integer '--min-score',
|
100
103
|
"The minimum score required for winning the election (default: #{Tax::EXACT_SCORE})",
|
101
104
|
default: Tax::EXACT_SCORE
|
@@ -252,7 +255,7 @@ Available options:"
|
|
252
255
|
all = @remotes.all
|
253
256
|
all.each do |r|
|
254
257
|
next if r[:errors] <= opts['tolerate']
|
255
|
-
@remotes.remove(r[:host], r[:port])
|
258
|
+
@remotes.remove(r[:host], r[:port]) if !opts['masters-too'] || !r[:master]
|
256
259
|
@log.info("#{r[:host]}:#{r[:port]} removed because of #{r[:errors]} errors (over #{opts['tolerate']})")
|
257
260
|
end
|
258
261
|
@log.info("The list of #{all.count} remotes trimmed, #{@remotes.all.count} nodes left there")
|
@@ -344,7 +347,7 @@ it's recommended to reboot, but I don't do it because of --never-reboot")
|
|
344
347
|
def select(opts)
|
345
348
|
selected = @remotes.all.sort_by { |r| r[:score] }.reverse.first(opts['max-nodes'])
|
346
349
|
(@remotes.all - selected).each do |r|
|
347
|
-
@remotes.remove(r[:host], r[:port])
|
350
|
+
@remotes.remove(r[:host], r[:port]) if !opts['masters-too'] || !r[:master]
|
348
351
|
@log.info("Remote #{r[:host]}:#{r[:port]}/#{r[:score]} removed from the list, #{@remotes.all.count} left")
|
349
352
|
end
|
350
353
|
@log.info("#{opts['max-nodes']} remote nodes left in the list")
|
data/lib/zold/node/farm.rb
CHANGED
@@ -153,7 +153,7 @@ at #{host}:#{port}, strength is #{@strength}")
|
|
153
153
|
def cleanup(host, port, threads)
|
154
154
|
scores = load
|
155
155
|
before = scores.map(&:value).max.to_i
|
156
|
-
save(threads, [Score.new(host: host, port: port, invoice: @invoice, strength: @strength)])
|
156
|
+
save(host, port, threads, [Score.new(host: host, port: port, invoice: @invoice, strength: @strength)])
|
157
157
|
scores = load
|
158
158
|
free = scores.reject { |s| @threads.exists?(s.to_mnemo) }
|
159
159
|
@pipeline << free[0] if @pipeline.size.zero? && !free.empty?
|
@@ -182,16 +182,19 @@ at #{host}:#{port}, strength is #{@strength}")
|
|
182
182
|
Thread.current.thread_variable_set(:start, Time.now.utc.iso8601)
|
183
183
|
score = @farmer.up(s)
|
184
184
|
@log.debug("New score discovered: #{score}") if @strength > 4
|
185
|
-
save(threads, [score])
|
185
|
+
save(host, port, threads, [score])
|
186
186
|
cleanup(host, port, threads)
|
187
187
|
end
|
188
188
|
|
189
|
-
def save(threads, list = [])
|
189
|
+
def save(host, port, threads, list = [])
|
190
190
|
scores = load + list
|
191
191
|
period = @lifetime / [threads, 1].max
|
192
192
|
body = scores.select(&:valid?)
|
193
193
|
.reject(&:expired?)
|
194
194
|
.reject { |s| s.strength < @strength }
|
195
|
+
.select { |s| s.host == host }
|
196
|
+
.select { |s| s.port == port }
|
197
|
+
.select { |s| s.invoice == @invoice }
|
195
198
|
.sort_by(&:value)
|
196
199
|
.reverse
|
197
200
|
.uniq(&:time)
|
data/lib/zold/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zold
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.23.
|
4
|
+
version: 0.23.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yegor Bugayenko
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-02-
|
11
|
+
date: 2019-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: backtrace
|
@@ -753,7 +753,7 @@ licenses:
|
|
753
753
|
- MIT
|
754
754
|
metadata: {}
|
755
755
|
post_install_message: |-
|
756
|
-
Thanks for installing Zold 0.23.
|
756
|
+
Thanks for installing Zold 0.23.8!
|
757
757
|
Study our White Paper: https://papers.zold.io/wp.pdf
|
758
758
|
Read our blog posts: https://blog.zold.io
|
759
759
|
Try ZLD online wallet at: https://wts.zold.io
|