zold 0.15.0 → 0.16.0

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.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/bin/zold +9 -6
  4. data/features/gem_package.feature +1 -1
  5. data/features/step_definitions/steps.rb +2 -2
  6. data/fixtures/merge/into-no-wallet/assert.rb +1 -1
  7. data/fixtures/merge/random-expenses/assert.rb +1 -1
  8. data/fixtures/merge/simple-case/assert.rb +1 -1
  9. data/lib/zold/age.rb +16 -8
  10. data/lib/zold/amount.rb +4 -2
  11. data/lib/zold/cached_wallets.rb +5 -6
  12. data/lib/zold/commands/clean.rb +15 -8
  13. data/lib/zold/commands/diff.rb +3 -3
  14. data/lib/zold/commands/fetch.rb +4 -4
  15. data/lib/zold/commands/list.rb +5 -4
  16. data/lib/zold/commands/merge.rb +2 -1
  17. data/lib/zold/commands/node.rb +14 -12
  18. data/lib/zold/commands/propagate.rb +2 -2
  19. data/lib/zold/commands/push.rb +3 -3
  20. data/lib/zold/commands/remove.rb +4 -1
  21. data/lib/zold/commands/routines/reconnect.rb +1 -0
  22. data/lib/zold/copies.rb +13 -14
  23. data/lib/zold/dir_items.rb +44 -0
  24. data/lib/zold/head.rb +1 -1
  25. data/lib/zold/key.rb +2 -2
  26. data/lib/zold/log.rb +2 -0
  27. data/lib/zold/node/async_entrance.rb +38 -28
  28. data/lib/zold/node/entrance.rb +4 -11
  29. data/lib/zold/node/farm.rb +9 -9
  30. data/lib/zold/node/front.rb +40 -25
  31. data/lib/zold/node/nodup_entrance.rb +4 -4
  32. data/lib/zold/node/safe_entrance.rb +2 -2
  33. data/lib/zold/node/spread_entrance.rb +5 -9
  34. data/lib/zold/node/sync_entrance.rb +2 -23
  35. data/lib/zold/patch.rb +2 -2
  36. data/lib/zold/remotes.rb +10 -6
  37. data/lib/zold/sync_wallets.rb +3 -22
  38. data/lib/zold/tree_wallets.rb +11 -6
  39. data/lib/zold/txns.rb +1 -1
  40. data/lib/zold/version.rb +1 -1
  41. data/lib/zold/wallet.rb +14 -5
  42. data/lib/zold/wallets.rb +5 -4
  43. data/test/commands/routines/test_spread.rb +1 -1
  44. data/test/commands/test_alias.rb +4 -4
  45. data/test/commands/test_clean.rb +14 -1
  46. data/test/commands/test_create.rb +2 -2
  47. data/test/commands/test_diff.rb +5 -5
  48. data/test/commands/test_fetch.rb +2 -2
  49. data/test/commands/test_merge.rb +19 -19
  50. data/test/commands/test_node.rb +1 -1
  51. data/test/commands/test_pay.rb +7 -6
  52. data/test/commands/test_propagate.rb +2 -1
  53. data/test/commands/test_pull.rb +1 -1
  54. data/test/commands/test_push.rb +1 -1
  55. data/test/commands/test_remove.rb +57 -0
  56. data/test/commands/test_taxes.rb +1 -1
  57. data/test/fake_home.rb +11 -8
  58. data/test/node/fake_node.rb +2 -2
  59. data/test/node/test_async_entrance.rb +24 -8
  60. data/test/node/test_emission.rb +2 -2
  61. data/test/node/test_entrance.rb +8 -6
  62. data/test/node/test_farm.rb +1 -1
  63. data/test/node/test_front.rb +42 -33
  64. data/test/node/test_nodup_entrance.rb +2 -2
  65. data/test/node/test_safe_entrance.rb +5 -5
  66. data/test/node/test_spread_entrance.rb +3 -3
  67. data/test/node/test_sync_entrance.rb +1 -1
  68. data/test/test__helper.rb +3 -29
  69. data/test/test_cached_wallets.rb +1 -1
  70. data/test/test_copies.rb +4 -2
  71. data/test/test_dir_items.rb +88 -0
  72. data/test/test_key.rb +2 -2
  73. data/test/test_log.rb +38 -0
  74. data/test/test_patch.rb +11 -11
  75. data/test/test_prefixes.rb +1 -1
  76. data/test/test_remotes.rb +12 -6
  77. data/test/test_sync_wallets.rb +6 -6
  78. data/test/test_tax.rb +4 -4
  79. data/test/test_tree_wallets.rb +16 -2
  80. data/test/test_wallet.rb +26 -26
  81. data/test/test_wallets.rb +5 -2
  82. data/test/test_zold.rb +2 -2
  83. data/test/upgrades/test_protocol_up.rb +1 -1
  84. data/upgrades/move_wallets_into_tree.rb +1 -1
  85. data/upgrades/protocol_up.rb +3 -3
  86. data/upgrades/rename_foreign_wallets.rb +1 -1
  87. data/zold.gemspec +27 -25
  88. metadata +91 -56
data/test/test_wallets.rb CHANGED
@@ -22,6 +22,7 @@
22
22
 
23
23
  require 'minitest/autorun'
24
24
  require 'tmpdir'
25
+ require_relative 'test__helper'
25
26
  require_relative 'fake_home'
26
27
  require_relative '../lib/zold/key'
27
28
  require_relative '../lib/zold/id'
@@ -34,7 +35,7 @@ require_relative '../lib/zold/amount'
34
35
  # License:: MIT
35
36
  class TestWallets < Minitest::Test
36
37
  def test_adds_wallet
37
- FakeHome.new.run do |home|
38
+ FakeHome.new(log: test_log).run do |home|
38
39
  wallets = home.wallets
39
40
  id = Zold::Id.new
40
41
  wallets.find(id) do |wallet|
@@ -45,9 +46,11 @@ class TestWallets < Minitest::Test
45
46
  end
46
47
 
47
48
  def test_lists_wallets_and_ignores_garbage
48
- FakeHome.new.run do |home|
49
+ FakeHome.new(log: test_log).run do |home|
49
50
  wallets = home.wallets
50
51
  FileUtils.touch(File.join(home.dir, '0xaaaaaaaaaaaaaaaaaaahello'))
52
+ FileUtils.mkdir_p(File.join(home.dir, 'a/b/c'))
53
+ FileUtils.touch(File.join(home.dir, 'a/b/c/0000111122223333.z'))
51
54
  id = Zold::Id.new
52
55
  wallets.find(id) do |wallet|
53
56
  wallet.init(id, Zold::Key.new(file: 'fixtures/id_rsa.pub'))
data/test/test_zold.rb CHANGED
@@ -34,12 +34,12 @@ require_relative '../lib/zold/version'
34
34
  class TestZold < Minitest::Test
35
35
  def test_all_scripts
36
36
  Dir.new('fixtures/scripts').select { |f| f =~ /\.sh$/ && !f.start_with?('_') }.each do |f|
37
- # next unless f == 'deadlocks.sh'
37
+ # next unless f == 'push-and-pull.sh'
38
38
  Dir.mktmpdir do |dir|
39
39
  FileUtils.cp('fixtures/id_rsa.pub', dir)
40
40
  FileUtils.cp('fixtures/id_rsa', dir)
41
41
  script = File.join(dir, f)
42
- File.write(script, File.read('fixtures/scripts/_head.sh') + File.read(File.join('fixtures/scripts', f)))
42
+ IO.write(script, IO.read('fixtures/scripts/_head.sh') + IO.read(File.join('fixtures/scripts', f)))
43
43
  bin = File.join(Dir.pwd, 'bin/zold')
44
44
  out = []
45
45
  Dir.chdir(dir) do
@@ -31,7 +31,7 @@ require_relative '../fake_home'
31
31
  # License:: MIT
32
32
  class TestProtocolUp < Minitest::Test
33
33
  def test_upgrades_protocol_in_wallet
34
- FakeHome.new.run do |home|
34
+ FakeHome.new(log: test_log).run do |home|
35
35
  id = home.create_wallet.id
36
36
  Zold::ProtocolUp.new(home.dir, test_log).exec
37
37
  home.wallets.find(id) do |wallet|
@@ -34,7 +34,7 @@ module Zold
34
34
 
35
35
  def exec
36
36
  Dir.new(@home).each do |path|
37
- next unless path =~ /^[a-f0-9]{16}#{Wallet::EXTENSION}$/
37
+ next unless path =~ /^[a-f0-9]{16}#{Wallet::EXT}$/
38
38
  f = File.join(@home, path)
39
39
  target = File.join(@home, (path.split('', 5).take(4) + [path]).join('/'))
40
40
  FileUtils.mkdir_p(File.dirname(target))
@@ -33,12 +33,12 @@ module Zold
33
33
 
34
34
  def exec
35
35
  Dir.new(@home).each do |path|
36
- next unless path =~ /^[a-f0-9]{16}#{Wallet::EXTENSION}$/
36
+ next unless path =~ /^[a-f0-9]{16}#{Wallet::EXT}$/
37
37
  f = File.join(@home, path)
38
- lines = File.read(f).split("\n")
38
+ lines = IO.read(f).split("\n")
39
39
  next if lines[1].to_i == Zold::PROTOCOL
40
40
  lines[1] = Zold::PROTOCOL
41
- File.write(f, lines.join("\n"))
41
+ IO.write(f, lines.join("\n"))
42
42
  @log.info("Protocol set to #{Zold::PROTOCOL} in #{f}")
43
43
  end
44
44
  end
@@ -34,7 +34,7 @@ module Zold
34
34
 
35
35
  def exec
36
36
  Dir.new(@home).each do |path|
37
- next unless path =~ /^[a-f0-9]{16}#{Wallet::EXTENSION}$/
37
+ next unless path =~ /^[a-f0-9]{16}#{Wallet::EXT}$/
38
38
  f = File.join(@home, path)
39
39
  wallet = Wallet.new(f)
40
40
  next if wallet.network == @network
data/zold.gemspec CHANGED
@@ -55,32 +55,34 @@ and suggests a different architecture for digital wallet maintenance.'
55
55
  s.rdoc_options = ['--charset=UTF-8']
56
56
  s.extra_rdoc_files = ['README.md', 'LICENSE.txt']
57
57
  s.add_runtime_dependency 'backtrace', '~>0'
58
- s.add_runtime_dependency 'cachy', '~>0.4'
59
- s.add_runtime_dependency 'concurrent-ruby', '~>1.0'
60
- s.add_runtime_dependency 'cucumber', '~>3.1' # has to stay here for Heroku
61
- s.add_runtime_dependency 'diffy', '~>3.2'
62
- s.add_runtime_dependency 'dry-struct', '~>0.5'
63
- s.add_runtime_dependency 'dry-types', '~>0.13'
64
- s.add_runtime_dependency 'get_process_mem', '~>0.2'
65
- s.add_runtime_dependency 'json', '~>1.8'
66
- s.add_runtime_dependency 'moneta', '~>1.0'
67
- s.add_runtime_dependency 'openssl', '~>2.1'
68
- s.add_runtime_dependency 'puma'
69
- s.add_runtime_dependency 'rainbow', '~>3.0'
70
- s.add_runtime_dependency 'rake', '~>12.3' # has to stay here for Heroku
58
+ s.add_runtime_dependency 'cachy', '~>0'
59
+ s.add_runtime_dependency 'concurrent-ruby', '1.1.0.pre2'
60
+ s.add_runtime_dependency 'cucumber', '~>3' # has to stay here for Heroku
61
+ s.add_runtime_dependency 'diffy', '~>3'
62
+ s.add_runtime_dependency 'dry-struct', '~>0'
63
+ s.add_runtime_dependency 'dry-types', '~>0'
64
+ s.add_runtime_dependency 'futex', '~>0'
65
+ s.add_runtime_dependency 'get_process_mem', '~>0'
66
+ s.add_runtime_dependency 'json', '~>2'
67
+ s.add_runtime_dependency 'moneta', '~>1'
68
+ s.add_runtime_dependency 'openssl', '~>2'
69
+ s.add_runtime_dependency 'puma', '~>3'
70
+ s.add_runtime_dependency 'rainbow', '~>3'
71
+ s.add_runtime_dependency 'rake', '~>12' # has to stay here for Heroku
71
72
  s.add_runtime_dependency 'rubocop', '0.58.1' # has to stay here for Heroku
72
- s.add_runtime_dependency 'rubocop-rspec', '~>1.27' # has to stay here for Heroku
73
- s.add_runtime_dependency 'semantic', '~>1.6'
74
- s.add_runtime_dependency 'sigdump', '~>0.2'
75
- s.add_runtime_dependency 'sinatra', '~>2.0'
76
- s.add_runtime_dependency 'slop', '~>4.4'
77
- s.add_runtime_dependency 'sys-proctable', '~>1.1'
78
- s.add_runtime_dependency 'usagewatch_ext', '~>0.2'
73
+ s.add_runtime_dependency 'rubocop-rspec', '~>1' # has to stay here for Heroku
74
+ s.add_runtime_dependency 'semantic', '~>1'
75
+ s.add_runtime_dependency 'sigdump', '~>0'
76
+ s.add_runtime_dependency 'sinatra', '~>2'
77
+ s.add_runtime_dependency 'slop', '~>4'
78
+ s.add_runtime_dependency 'sys-proctable', '~>1'
79
+ s.add_runtime_dependency 'threads', '~>0'
80
+ s.add_runtime_dependency 'usagewatch_ext', '~>0'
79
81
  s.add_runtime_dependency 'xcop', '~>0'
80
- s.add_development_dependency 'codecov', '~>0.1'
81
- s.add_development_dependency 'minitest', '~>5.11'
82
+ s.add_development_dependency 'codecov', '~>0'
83
+ s.add_development_dependency 'minitest', '~>5'
82
84
  s.add_development_dependency 'random-port', '~>0'
83
- s.add_development_dependency 'rdoc', '~>4.2'
84
- s.add_development_dependency 'rspec-rails', '~>3.1'
85
- s.add_development_dependency 'webmock', '~>3.4'
85
+ s.add_development_dependency 'rdoc', '~>4'
86
+ s.add_development_dependency 'rspec-rails', '~>3'
87
+ s.add_development_dependency 'webmock', '~>3'
86
88
  end
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.15.0
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-21 00:00:00.000000000 Z
11
+ date: 2018-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: backtrace
@@ -30,182 +30,196 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.4'
33
+ version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.4'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
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.0'
47
+ version: 1.1.0.pre2
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.0'
54
+ version: 1.1.0.pre2
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: cucumber
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.1'
61
+ version: '3'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.1'
68
+ version: '3'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: diffy
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '3.2'
75
+ version: '3'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '3.2'
82
+ version: '3'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: dry-struct
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0.5'
89
+ version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0.5'
96
+ version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: dry-types
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0.13'
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: futex
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: '0.13'
124
+ version: '0'
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: get_process_mem
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: '0.2'
131
+ version: '0'
118
132
  type: :runtime
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
136
  - - "~>"
123
137
  - !ruby/object:Gem::Version
124
- version: '0.2'
138
+ version: '0'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: json
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '1.8'
145
+ version: '2'
132
146
  type: :runtime
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '1.8'
152
+ version: '2'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: moneta
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
157
  - - "~>"
144
158
  - !ruby/object:Gem::Version
145
- version: '1.0'
159
+ version: '1'
146
160
  type: :runtime
147
161
  prerelease: false
148
162
  version_requirements: !ruby/object:Gem::Requirement
149
163
  requirements:
150
164
  - - "~>"
151
165
  - !ruby/object:Gem::Version
152
- version: '1.0'
166
+ version: '1'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: openssl
155
169
  requirement: !ruby/object:Gem::Requirement
156
170
  requirements:
157
171
  - - "~>"
158
172
  - !ruby/object:Gem::Version
159
- version: '2.1'
173
+ version: '2'
160
174
  type: :runtime
161
175
  prerelease: false
162
176
  version_requirements: !ruby/object:Gem::Requirement
163
177
  requirements:
164
178
  - - "~>"
165
179
  - !ruby/object:Gem::Version
166
- version: '2.1'
180
+ version: '2'
167
181
  - !ruby/object:Gem::Dependency
168
182
  name: puma
169
183
  requirement: !ruby/object:Gem::Requirement
170
184
  requirements:
171
- - - ">="
185
+ - - "~>"
172
186
  - !ruby/object:Gem::Version
173
- version: '0'
187
+ version: '3'
174
188
  type: :runtime
175
189
  prerelease: false
176
190
  version_requirements: !ruby/object:Gem::Requirement
177
191
  requirements:
178
- - - ">="
192
+ - - "~>"
179
193
  - !ruby/object:Gem::Version
180
- version: '0'
194
+ version: '3'
181
195
  - !ruby/object:Gem::Dependency
182
196
  name: rainbow
183
197
  requirement: !ruby/object:Gem::Requirement
184
198
  requirements:
185
199
  - - "~>"
186
200
  - !ruby/object:Gem::Version
187
- version: '3.0'
201
+ version: '3'
188
202
  type: :runtime
189
203
  prerelease: false
190
204
  version_requirements: !ruby/object:Gem::Requirement
191
205
  requirements:
192
206
  - - "~>"
193
207
  - !ruby/object:Gem::Version
194
- version: '3.0'
208
+ version: '3'
195
209
  - !ruby/object:Gem::Dependency
196
210
  name: rake
197
211
  requirement: !ruby/object:Gem::Requirement
198
212
  requirements:
199
213
  - - "~>"
200
214
  - !ruby/object:Gem::Version
201
- version: '12.3'
215
+ version: '12'
202
216
  type: :runtime
203
217
  prerelease: false
204
218
  version_requirements: !ruby/object:Gem::Requirement
205
219
  requirements:
206
220
  - - "~>"
207
221
  - !ruby/object:Gem::Version
208
- version: '12.3'
222
+ version: '12'
209
223
  - !ruby/object:Gem::Dependency
210
224
  name: rubocop
211
225
  requirement: !ruby/object:Gem::Requirement
@@ -226,98 +240,112 @@ dependencies:
226
240
  requirements:
227
241
  - - "~>"
228
242
  - !ruby/object:Gem::Version
229
- version: '1.27'
243
+ version: '1'
230
244
  type: :runtime
231
245
  prerelease: false
232
246
  version_requirements: !ruby/object:Gem::Requirement
233
247
  requirements:
234
248
  - - "~>"
235
249
  - !ruby/object:Gem::Version
236
- version: '1.27'
250
+ version: '1'
237
251
  - !ruby/object:Gem::Dependency
238
252
  name: semantic
239
253
  requirement: !ruby/object:Gem::Requirement
240
254
  requirements:
241
255
  - - "~>"
242
256
  - !ruby/object:Gem::Version
243
- version: '1.6'
257
+ version: '1'
244
258
  type: :runtime
245
259
  prerelease: false
246
260
  version_requirements: !ruby/object:Gem::Requirement
247
261
  requirements:
248
262
  - - "~>"
249
263
  - !ruby/object:Gem::Version
250
- version: '1.6'
264
+ version: '1'
251
265
  - !ruby/object:Gem::Dependency
252
266
  name: sigdump
253
267
  requirement: !ruby/object:Gem::Requirement
254
268
  requirements:
255
269
  - - "~>"
256
270
  - !ruby/object:Gem::Version
257
- version: '0.2'
271
+ version: '0'
258
272
  type: :runtime
259
273
  prerelease: false
260
274
  version_requirements: !ruby/object:Gem::Requirement
261
275
  requirements:
262
276
  - - "~>"
263
277
  - !ruby/object:Gem::Version
264
- version: '0.2'
278
+ version: '0'
265
279
  - !ruby/object:Gem::Dependency
266
280
  name: sinatra
267
281
  requirement: !ruby/object:Gem::Requirement
268
282
  requirements:
269
283
  - - "~>"
270
284
  - !ruby/object:Gem::Version
271
- version: '2.0'
285
+ version: '2'
272
286
  type: :runtime
273
287
  prerelease: false
274
288
  version_requirements: !ruby/object:Gem::Requirement
275
289
  requirements:
276
290
  - - "~>"
277
291
  - !ruby/object:Gem::Version
278
- version: '2.0'
292
+ version: '2'
279
293
  - !ruby/object:Gem::Dependency
280
294
  name: slop
281
295
  requirement: !ruby/object:Gem::Requirement
282
296
  requirements:
283
297
  - - "~>"
284
298
  - !ruby/object:Gem::Version
285
- version: '4.4'
299
+ version: '4'
286
300
  type: :runtime
287
301
  prerelease: false
288
302
  version_requirements: !ruby/object:Gem::Requirement
289
303
  requirements:
290
304
  - - "~>"
291
305
  - !ruby/object:Gem::Version
292
- version: '4.4'
306
+ version: '4'
293
307
  - !ruby/object:Gem::Dependency
294
308
  name: sys-proctable
295
309
  requirement: !ruby/object:Gem::Requirement
296
310
  requirements:
297
311
  - - "~>"
298
312
  - !ruby/object:Gem::Version
299
- version: '1.1'
313
+ version: '1'
314
+ type: :runtime
315
+ prerelease: false
316
+ version_requirements: !ruby/object:Gem::Requirement
317
+ requirements:
318
+ - - "~>"
319
+ - !ruby/object:Gem::Version
320
+ version: '1'
321
+ - !ruby/object:Gem::Dependency
322
+ name: threads
323
+ requirement: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - "~>"
326
+ - !ruby/object:Gem::Version
327
+ version: '0'
300
328
  type: :runtime
301
329
  prerelease: false
302
330
  version_requirements: !ruby/object:Gem::Requirement
303
331
  requirements:
304
332
  - - "~>"
305
333
  - !ruby/object:Gem::Version
306
- version: '1.1'
334
+ version: '0'
307
335
  - !ruby/object:Gem::Dependency
308
336
  name: usagewatch_ext
309
337
  requirement: !ruby/object:Gem::Requirement
310
338
  requirements:
311
339
  - - "~>"
312
340
  - !ruby/object:Gem::Version
313
- version: '0.2'
341
+ version: '0'
314
342
  type: :runtime
315
343
  prerelease: false
316
344
  version_requirements: !ruby/object:Gem::Requirement
317
345
  requirements:
318
346
  - - "~>"
319
347
  - !ruby/object:Gem::Version
320
- version: '0.2'
348
+ version: '0'
321
349
  - !ruby/object:Gem::Dependency
322
350
  name: xcop
323
351
  requirement: !ruby/object:Gem::Requirement
@@ -338,28 +366,28 @@ dependencies:
338
366
  requirements:
339
367
  - - "~>"
340
368
  - !ruby/object:Gem::Version
341
- version: '0.1'
369
+ version: '0'
342
370
  type: :development
343
371
  prerelease: false
344
372
  version_requirements: !ruby/object:Gem::Requirement
345
373
  requirements:
346
374
  - - "~>"
347
375
  - !ruby/object:Gem::Version
348
- version: '0.1'
376
+ version: '0'
349
377
  - !ruby/object:Gem::Dependency
350
378
  name: minitest
351
379
  requirement: !ruby/object:Gem::Requirement
352
380
  requirements:
353
381
  - - "~>"
354
382
  - !ruby/object:Gem::Version
355
- version: '5.11'
383
+ version: '5'
356
384
  type: :development
357
385
  prerelease: false
358
386
  version_requirements: !ruby/object:Gem::Requirement
359
387
  requirements:
360
388
  - - "~>"
361
389
  - !ruby/object:Gem::Version
362
- version: '5.11'
390
+ version: '5'
363
391
  - !ruby/object:Gem::Dependency
364
392
  name: random-port
365
393
  requirement: !ruby/object:Gem::Requirement
@@ -380,42 +408,42 @@ dependencies:
380
408
  requirements:
381
409
  - - "~>"
382
410
  - !ruby/object:Gem::Version
383
- version: '4.2'
411
+ version: '4'
384
412
  type: :development
385
413
  prerelease: false
386
414
  version_requirements: !ruby/object:Gem::Requirement
387
415
  requirements:
388
416
  - - "~>"
389
417
  - !ruby/object:Gem::Version
390
- version: '4.2'
418
+ version: '4'
391
419
  - !ruby/object:Gem::Dependency
392
420
  name: rspec-rails
393
421
  requirement: !ruby/object:Gem::Requirement
394
422
  requirements:
395
423
  - - "~>"
396
424
  - !ruby/object:Gem::Version
397
- version: '3.1'
425
+ version: '3'
398
426
  type: :development
399
427
  prerelease: false
400
428
  version_requirements: !ruby/object:Gem::Requirement
401
429
  requirements:
402
430
  - - "~>"
403
431
  - !ruby/object:Gem::Version
404
- version: '3.1'
432
+ version: '3'
405
433
  - !ruby/object:Gem::Dependency
406
434
  name: webmock
407
435
  requirement: !ruby/object:Gem::Requirement
408
436
  requirements:
409
437
  - - "~>"
410
438
  - !ruby/object:Gem::Version
411
- version: '3.4'
439
+ version: '3'
412
440
  type: :development
413
441
  prerelease: false
414
442
  version_requirements: !ruby/object:Gem::Requirement
415
443
  requirements:
416
444
  - - "~>"
417
445
  - !ruby/object:Gem::Version
418
- version: '3.4'
446
+ version: '3'
419
447
  description: |-
420
448
  In the last few years digital currencies have successfully demonstrated
421
449
  their ability to become an alternative financial instrument in many
@@ -526,6 +554,7 @@ files:
526
554
  - lib/zold/commands/show.rb
527
555
  - lib/zold/commands/taxes.rb
528
556
  - lib/zold/copies.rb
557
+ - lib/zold/dir_items.rb
529
558
  - lib/zold/gem.rb
530
559
  - lib/zold/head.rb
531
560
  - lib/zold/hexnum.rb
@@ -582,6 +611,7 @@ files:
582
611
  - test/commands/test_pull.rb
583
612
  - test/commands/test_push.rb
584
613
  - test/commands/test_remote.rb
614
+ - test/commands/test_remove.rb
585
615
  - test/commands/test_show.rb
586
616
  - test/commands/test_taxes.rb
587
617
  - test/fake_home.rb
@@ -602,11 +632,13 @@ files:
602
632
  - test/test_amount.rb
603
633
  - test/test_cached_wallets.rb
604
634
  - test/test_copies.rb
635
+ - test/test_dir_items.rb
605
636
  - test/test_gem.rb
606
637
  - test/test_hexnum.rb
607
638
  - test/test_http.rb
608
639
  - test/test_id.rb
609
640
  - test/test_key.rb
641
+ - test/test_log.rb
610
642
  - test/test_metronome.rb
611
643
  - test/test_patch.rb
612
644
  - test/test_prefixes.rb
@@ -678,6 +710,7 @@ test_files:
678
710
  - test/commands/test_pull.rb
679
711
  - test/commands/test_push.rb
680
712
  - test/commands/test_remote.rb
713
+ - test/commands/test_remove.rb
681
714
  - test/commands/test_show.rb
682
715
  - test/commands/test_taxes.rb
683
716
  - test/fake_home.rb
@@ -698,11 +731,13 @@ test_files:
698
731
  - test/test_amount.rb
699
732
  - test/test_cached_wallets.rb
700
733
  - test/test_copies.rb
734
+ - test/test_dir_items.rb
701
735
  - test/test_gem.rb
702
736
  - test/test_hexnum.rb
703
737
  - test/test_http.rb
704
738
  - test/test_id.rb
705
739
  - test/test_key.rb
740
+ - test/test_log.rb
706
741
  - test/test_metronome.rb
707
742
  - test/test_patch.rb
708
743
  - test/test_prefixes.rb