zold 0.16.1 → 0.16.2

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: dce2c92e30d43499ad5adfb3bc160384024d855fc05c05cebe01248b63ad21c6
4
- data.tar.gz: 7630a27799a5260450ba09211906b9c3396bd6abadca7ada4948b85ec5254655
3
+ metadata.gz: 838582cd18be0826a9bec1f182cfde2bc160fc38039088a5935bb6b88b685d0c
4
+ data.tar.gz: 0c269f84cccf646ba2f8640d00a9f4813ebf7665ac62e76820112fb3ebc304c9
5
5
  SHA512:
6
- metadata.gz: 8396ac223ada21c0cc243d98afccf2b83ffbc9d599bd90438a9d431f97e28199bf4d906be837f89572bb60c68e19dfbd2a9d57144d49c908a336cc324c0213cb
7
- data.tar.gz: b586b645bda118c3ab16ad8505f6b01d19683666f6d53df2b0b39669f76391964f0046ed9328b29928afd377eced9e4824b4252b019ebb6b3cdb8b17778bf8e3
6
+ metadata.gz: 2badf81c5bf91b91333a3265eeee80eaa4dabd832ea758b3342b2f2288c26a1e445fcb6e702726a6c88c3251e21cb3aac294dd3e477ad3a26a886545f7321d94
7
+ data.tar.gz: f3b3b9fe33ca080202a3d5466356087a75385fa0d0f2dc13b5771433c5b5a652978d291d285ae2d04ba973ad899040dead2a0edb4dfbcc29be4391369f3d64e9
@@ -21,7 +21,6 @@
21
21
  # SOFTWARE.
22
22
 
23
23
  require 'concurrent'
24
- require 'concurrent/set'
25
24
  require 'tempfile'
26
25
  require_relative 'emission'
27
26
  require_relative '../log'
@@ -47,6 +46,7 @@ module Zold
47
46
  @address = address
48
47
  @log = log
49
48
  @ignore_score_weakeness = ignore_score_weakeness
49
+ @mutex = Mutex.new
50
50
  end
51
51
 
52
52
  def to_json
@@ -58,7 +58,7 @@ module Zold
58
58
 
59
59
  def start
60
60
  @entrance.start do
61
- @seen = Concurrent::Set.new
61
+ @seen = Set.new
62
62
  @modified = Queue.new
63
63
  @push = Thread.start do
64
64
  Thread.current.abort_on_exception = true
@@ -74,7 +74,7 @@ module Zold
74
74
  (@ignore_score_weakeness ? ['--ignore-score-weakness'] : [])
75
75
  )
76
76
  end
77
- @seen.delete(id)
77
+ @mutex.synchronize { @seen.delete(id) }
78
78
  end
79
79
  end
80
80
  end
@@ -95,7 +95,7 @@ module Zold
95
95
  return mods if @remotes.all.empty?
96
96
  (mods + [id]).each do |m|
97
97
  next if @seen.include?(m)
98
- @seen << m
98
+ @mutex.synchronize { @seen << m }
99
99
  @modified.push(m)
100
100
  @log.debug("Spread-push scheduled for #{m}, queue size is #{@modified.size}")
101
101
  end
data/lib/zold/version.rb CHANGED
@@ -25,6 +25,6 @@
25
25
  # Copyright:: Copyright (c) 2018 Yegor Bugayenko
26
26
  # License:: MIT
27
27
  module Zold
28
- VERSION = '0.16.1'
28
+ VERSION = '0.16.2'
29
29
  PROTOCOL = 2
30
30
  end
data/zold.gemspec CHANGED
@@ -56,7 +56,7 @@ and suggests a different architecture for digital wallet maintenance.'
56
56
  s.extra_rdoc_files = ['README.md', 'LICENSE.txt']
57
57
  s.add_runtime_dependency 'backtrace', '~>0'
58
58
  s.add_runtime_dependency 'cachy', '~>0'
59
- s.add_runtime_dependency 'concurrent-ruby', '1.1.0.pre2'
59
+ s.add_runtime_dependency 'concurrent-ruby', '~>1.0'
60
60
  s.add_runtime_dependency 'cucumber', '~>3' # has to stay here for Heroku
61
61
  s.add_runtime_dependency 'diffy', '~>3'
62
62
  s.add_runtime_dependency 'dry-struct', '~>0'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zold
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.1
4
+ version: 0.16.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: concurrent-ruby
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '='
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.1.0.pre2
47
+ version: '1.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '='
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.1.0.pre2
54
+ version: '1.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: cucumber
57
57
  requirement: !ruby/object:Gem::Requirement