zold 0.31.7 → 0.31.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (196) hide show
  1. checksums.yaml +4 -4
  2. data/.0pdd.yml +20 -0
  3. data/.github/workflows/actionlint.yml +41 -0
  4. data/.github/workflows/codecov.yml +23 -4
  5. data/.github/workflows/copyrights.yml +30 -0
  6. data/.github/workflows/pdd.yml +26 -3
  7. data/.github/workflows/rake.yml +24 -2
  8. data/.github/workflows/xcop.yml +21 -2
  9. data/.github/workflows/yamllint.yml +34 -0
  10. data/.gitignore +2 -1
  11. data/.rubocop.yml +22 -1
  12. data/.ruby-version +1 -1
  13. data/.rultor.yml +35 -5
  14. data/.simplecov +1 -1
  15. data/Dockerfile +29 -3
  16. data/Gemfile +10 -10
  17. data/Gemfile.lock +340 -0
  18. data/LICENSE.txt +1 -1
  19. data/Rakefile +9 -12
  20. data/bin/zold +1 -1
  21. data/cucumber.yml +20 -0
  22. data/deploy.sh +20 -0
  23. data/features/step_definitions/steps.rb +1 -1
  24. data/features/support/env.rb +1 -1
  25. data/fixtures/merge/asserts.rb +1 -1
  26. data/fixtures/merge/into_no_wallet/assert.rb +1 -1
  27. data/fixtures/merge/legacy_negatives_stay/assert.rb +1 -1
  28. data/fixtures/merge/missed_wallets/assert.rb +1 -1
  29. data/fixtures/merge/negative_overwriting/assert.rb +1 -1
  30. data/fixtures/merge/negatives_in_between/assert.rb +1 -1
  31. data/fixtures/merge/random_expenses/assert.rb +1 -1
  32. data/fixtures/merge/simple_case/assert.rb +1 -1
  33. data/fixtures/merge/unconfirmed_income/assert.rb +1 -1
  34. data/fixtures/scripts/_head.sh +21 -1
  35. data/fixtures/scripts/calculate-scores.sh +19 -0
  36. data/fixtures/scripts/distribute-wallet.sh +19 -0
  37. data/fixtures/scripts/print-helps.sh +19 -0
  38. data/fixtures/scripts/pull-on-start.sh +19 -0
  39. data/fixtures/scripts/push-and-pull.sh +19 -0
  40. data/fixtures/scripts/redeploy-on-upgrade.sh +19 -0
  41. data/fixtures/scripts/spread-wallets.sh +19 -0
  42. data/lib/zold/age.rb +2 -2
  43. data/lib/zold/amount.rb +2 -2
  44. data/lib/zold/cached_wallets.rb +3 -3
  45. data/lib/zold/commands/alias.rb +20 -0
  46. data/lib/zold/commands/args.rb +2 -2
  47. data/lib/zold/commands/calculate.rb +2 -2
  48. data/lib/zold/commands/clean.rb +2 -2
  49. data/lib/zold/commands/create.rb +3 -2
  50. data/lib/zold/commands/diff.rb +2 -2
  51. data/lib/zold/commands/fetch.rb +2 -2
  52. data/lib/zold/commands/invoice.rb +2 -2
  53. data/lib/zold/commands/list.rb +2 -2
  54. data/lib/zold/commands/merge.rb +2 -2
  55. data/lib/zold/commands/next.rb +2 -2
  56. data/lib/zold/commands/node.rb +2 -2
  57. data/lib/zold/commands/pay.rb +2 -2
  58. data/lib/zold/commands/propagate.rb +2 -2
  59. data/lib/zold/commands/pull.rb +2 -2
  60. data/lib/zold/commands/push.rb +2 -2
  61. data/lib/zold/commands/remote.rb +2 -2
  62. data/lib/zold/commands/remove.rb +2 -2
  63. data/lib/zold/commands/routines/audit.rb +2 -2
  64. data/lib/zold/commands/routines/gc.rb +2 -2
  65. data/lib/zold/commands/routines/reconcile.rb +2 -2
  66. data/lib/zold/commands/routines/reconnect.rb +2 -2
  67. data/lib/zold/commands/routines/retire.rb +2 -2
  68. data/lib/zold/commands/routines/spread.rb +2 -2
  69. data/lib/zold/commands/routines.rb +2 -2
  70. data/lib/zold/commands/show.rb +2 -2
  71. data/lib/zold/commands/taxes.rb +2 -2
  72. data/lib/zold/commands/thread_badge.rb +3 -3
  73. data/lib/zold/copies.rb +2 -2
  74. data/lib/zold/dir_items.rb +2 -2
  75. data/lib/zold/endless.rb +2 -2
  76. data/lib/zold/gem.rb +2 -2
  77. data/lib/zold/hands.rb +2 -2
  78. data/lib/zold/head.rb +3 -3
  79. data/lib/zold/hexnum.rb +2 -2
  80. data/lib/zold/http.rb +3 -3
  81. data/lib/zold/hungry_wallets.rb +2 -2
  82. data/lib/zold/id.rb +4 -3
  83. data/lib/zold/json_page.rb +2 -2
  84. data/lib/zold/key.rb +2 -2
  85. data/lib/zold/log.rb +2 -2
  86. data/lib/zold/metronome.rb +2 -2
  87. data/lib/zold/node/async_entrance.rb +2 -2
  88. data/lib/zold/node/entrance.rb +2 -2
  89. data/lib/zold/node/farm.rb +2 -2
  90. data/lib/zold/node/farmers.rb +2 -2
  91. data/lib/zold/node/front.rb +3 -3
  92. data/lib/zold/node/journaled_pipeline.rb +2 -2
  93. data/lib/zold/node/nodup_entrance.rb +2 -2
  94. data/lib/zold/node/nospam_entrance.rb +2 -2
  95. data/lib/zold/node/pipeline.rb +2 -2
  96. data/lib/zold/node/safe_entrance.rb +2 -2
  97. data/lib/zold/node/soft_error.rb +2 -2
  98. data/lib/zold/node/spread_entrance.rb +2 -2
  99. data/lib/zold/node/sync_entrance.rb +2 -2
  100. data/lib/zold/node/trace.rb +2 -2
  101. data/lib/zold/patch.rb +2 -2
  102. data/lib/zold/prefixes.rb +2 -2
  103. data/lib/zold/remotes.rb +2 -2
  104. data/lib/zold/signature.rb +2 -2
  105. data/lib/zold/size.rb +2 -2
  106. data/lib/zold/sync_wallets.rb +2 -2
  107. data/lib/zold/tax.rb +2 -2
  108. data/lib/zold/thread_pool.rb +2 -2
  109. data/lib/zold/tree_wallets.rb +2 -2
  110. data/lib/zold/txn.rb +2 -2
  111. data/lib/zold/txns.rb +3 -3
  112. data/lib/zold/upgrades.rb +1 -1
  113. data/lib/zold/verbose_thread.rb +2 -2
  114. data/lib/zold/version.rb +3 -3
  115. data/lib/zold/version_file.rb +1 -1
  116. data/lib/zold/wallet.rb +2 -2
  117. data/lib/zold/wallets.rb +2 -2
  118. data/lib/zold.rb +2 -2
  119. data/test/commands/routines/test_audit.rb +4 -4
  120. data/test/commands/routines/test_gc.rb +8 -8
  121. data/test/commands/routines/test_reconcile.rb +4 -4
  122. data/test/commands/routines/test_reconnect.rb +3 -3
  123. data/test/commands/routines/test_retire.rb +3 -3
  124. data/test/commands/test_alias.rb +26 -6
  125. data/test/commands/test_calculate.rb +3 -3
  126. data/test/commands/test_clean.rb +10 -10
  127. data/test/commands/test_create.rb +3 -3
  128. data/test/commands/test_diff.rb +5 -5
  129. data/test/commands/test_fetch.rb +9 -9
  130. data/test/commands/test_invoice.rb +3 -3
  131. data/test/commands/test_list.rb +3 -3
  132. data/test/commands/test_merge.rb +12 -12
  133. data/test/commands/test_node.rb +6 -6
  134. data/test/commands/test_pay.rb +19 -19
  135. data/test/commands/test_propagate.rb +5 -5
  136. data/test/commands/test_pull.rb +6 -6
  137. data/test/commands/test_push.rb +9 -9
  138. data/test/commands/test_remote.rb +11 -11
  139. data/test/commands/test_remove.rb +10 -10
  140. data/test/commands/test_show.rb +3 -3
  141. data/test/commands/test_taxes.rb +4 -4
  142. data/test/fake_home.rb +2 -2
  143. data/test/node/fake_entrance.rb +2 -2
  144. data/test/node/fake_node.rb +57 -40
  145. data/test/node/test_async_entrance.rb +10 -10
  146. data/test/node/test_entrance.rb +8 -8
  147. data/test/node/test_farm.rb +11 -11
  148. data/test/node/test_farmers.rb +5 -5
  149. data/test/node/test_front.rb +29 -28
  150. data/test/node/test_nodup_entrance.rb +4 -4
  151. data/test/node/test_nospam_entrance.rb +3 -3
  152. data/test/node/test_safe_entrance.rb +4 -4
  153. data/test/node/test_spread_entrance.rb +8 -8
  154. data/test/node/test_sync_entrance.rb +4 -4
  155. data/test/node/test_trace.rb +2 -2
  156. data/test/test__helper.rb +4 -4
  157. data/test/test_age.rb +2 -2
  158. data/test/test_amount.rb +2 -2
  159. data/test/test_cached_wallets.rb +2 -2
  160. data/test/test_copies.rb +12 -12
  161. data/test/test_dir_items.rb +4 -4
  162. data/test/test_gem.rb +20 -0
  163. data/test/test_hands.rb +2 -2
  164. data/test/test_hexnum.rb +2 -2
  165. data/test/test_http.rb +8 -8
  166. data/test/test_hungry_wallets.rb +11 -11
  167. data/test/test_id.rb +11 -2
  168. data/test/test_json_page.rb +2 -2
  169. data/test/test_key.rb +2 -2
  170. data/test/test_log.rb +5 -5
  171. data/test/test_metronome.rb +6 -6
  172. data/test/test_patch.rb +14 -14
  173. data/test/test_prefixes.rb +3 -3
  174. data/test/test_remotes.rb +9 -9
  175. data/test/test_signature.rb +2 -2
  176. data/test/test_size.rb +2 -2
  177. data/test/test_sync_wallets.rb +3 -3
  178. data/test/test_tax.rb +9 -9
  179. data/test/test_thread_pool.rb +8 -8
  180. data/test/test_tree_wallets.rb +2 -2
  181. data/test/test_txn.rb +2 -2
  182. data/test/test_upgrades.rb +2 -2
  183. data/test/test_verbose_thread.rb +2 -2
  184. data/test/test_version.rb +20 -0
  185. data/test/test_wallet.rb +22 -22
  186. data/test/test_wallets.rb +5 -5
  187. data/test/test_zold.rb +5 -5
  188. data/test/upgrades/test_delete_banned_wallets.rb +4 -4
  189. data/test/upgrades/test_protocol_up.rb +4 -4
  190. data/upgrades/2.rb +1 -1
  191. data/upgrades/delete_banned_wallets.rb +1 -1
  192. data/upgrades/move_wallets_into_tree.rb +1 -1
  193. data/upgrades/protocol_up.rb +1 -1
  194. data/upgrades/rename_foreign_wallets.rb +1 -1
  195. data/zold.gemspec +23 -23
  196. metadata +7 -3
data/Gemfile.lock ADDED
@@ -0,0 +1,340 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ zold (0.31.9)
5
+ backtrace (~> 0.3)
6
+ concurrent-ruby (~> 1.1)
7
+ diffy (~> 3.3)
8
+ futex (~> 0.8)
9
+ get_process_mem (~> 0.2)
10
+ haml (~> 5.0)
11
+ json (~> 2.2)
12
+ memory_profiler (~> 1.0)
13
+ mimic (~> 0.4)
14
+ openssl (>= 1.0)
15
+ rainbow (~> 3.0)
16
+ semantic (~> 1.6)
17
+ sinatra (~> 3.0)
18
+ slop (~> 4.6)
19
+ sys-proctable (~> 1.2)
20
+ thin (~> 1.7)
21
+ threads (~> 0.3)
22
+ total (~> 0.3)
23
+ typhoeus (~> 1.3)
24
+ usagewatch_ext (~> 0.2)
25
+ zache (~> 0.12)
26
+ zold-score (~> 0.5)
27
+
28
+ GEM
29
+ remote: https://rubygems.org/
30
+ specs:
31
+ actionpack (7.1.3.4)
32
+ actionview (= 7.1.3.4)
33
+ activesupport (= 7.1.3.4)
34
+ nokogiri (>= 1.8.5)
35
+ racc
36
+ rack (>= 2.2.4)
37
+ rack-session (>= 1.0.1)
38
+ rack-test (>= 0.6.3)
39
+ rails-dom-testing (~> 2.2)
40
+ rails-html-sanitizer (~> 1.6)
41
+ actionview (7.1.3.4)
42
+ activesupport (= 7.1.3.4)
43
+ builder (~> 3.1)
44
+ erubi (~> 1.11)
45
+ rails-dom-testing (~> 2.2)
46
+ rails-html-sanitizer (~> 1.6)
47
+ activesupport (7.1.3.4)
48
+ base64
49
+ bigdecimal
50
+ concurrent-ruby (~> 1.0, >= 1.0.2)
51
+ connection_pool (>= 2.2.5)
52
+ drb
53
+ i18n (>= 1.6, < 2)
54
+ minitest (>= 5.1)
55
+ mutex_m
56
+ tzinfo (~> 2.0)
57
+ addressable (2.8.7)
58
+ public_suffix (>= 2.0.2, < 7.0)
59
+ ansi (1.5.0)
60
+ ast (2.4.2)
61
+ backtrace (0.4.0)
62
+ base64 (0.2.0)
63
+ bigdecimal (3.1.8)
64
+ builder (3.3.0)
65
+ coderay (1.1.3)
66
+ concurrent-ruby (1.3.3)
67
+ connection_pool (2.4.1)
68
+ crack (1.0.0)
69
+ bigdecimal
70
+ rexml
71
+ crass (1.0.6)
72
+ cucumber (9.2.0)
73
+ builder (~> 3.2)
74
+ cucumber-ci-environment (> 9, < 11)
75
+ cucumber-core (> 13, < 14)
76
+ cucumber-cucumber-expressions (~> 17.0)
77
+ cucumber-gherkin (> 24, < 28)
78
+ cucumber-html-formatter (> 20.3, < 22)
79
+ cucumber-messages (> 19, < 25)
80
+ diff-lcs (~> 1.5)
81
+ mini_mime (~> 1.1)
82
+ multi_test (~> 1.1)
83
+ sys-uname (~> 1.2)
84
+ cucumber-ci-environment (10.0.1)
85
+ cucumber-core (13.0.2)
86
+ cucumber-gherkin (>= 27, < 28)
87
+ cucumber-messages (>= 20, < 23)
88
+ cucumber-tag-expressions (> 5, < 7)
89
+ cucumber-cucumber-expressions (17.1.0)
90
+ bigdecimal
91
+ cucumber-gherkin (27.0.0)
92
+ cucumber-messages (>= 19.1.4, < 23)
93
+ cucumber-html-formatter (21.4.0)
94
+ cucumber-messages (> 19, < 25)
95
+ cucumber-messages (22.0.0)
96
+ cucumber-tag-expressions (6.1.0)
97
+ daemons (1.4.1)
98
+ diff-lcs (1.5.1)
99
+ differ (0.1.2)
100
+ diffy (3.4.2)
101
+ docile (1.4.0)
102
+ drb (2.2.1)
103
+ erubi (1.13.0)
104
+ ethon (0.16.0)
105
+ ffi (>= 1.15.0)
106
+ eventmachine (1.2.7)
107
+ ffi (1.17.0-arm64-darwin)
108
+ ffi (1.17.0-x86_64-linux-gnu)
109
+ formatador (1.1.0)
110
+ futex (0.8.6)
111
+ get_process_mem (0.2.7)
112
+ ffi (~> 1.0)
113
+ guard (2.18.1)
114
+ formatador (>= 0.2.4)
115
+ listen (>= 2.7, < 4.0)
116
+ lumberjack (>= 1.0.12, < 2.0)
117
+ nenv (~> 0.1)
118
+ notiffany (~> 0.0)
119
+ pry (>= 0.13.0)
120
+ shellany (~> 0.0)
121
+ thor (>= 0.18.1)
122
+ guard-compat (1.2.1)
123
+ guard-minitest (2.4.6)
124
+ guard-compat (~> 1.2)
125
+ minitest (>= 3.0)
126
+ haml (5.2.2)
127
+ temple (>= 0.8.0)
128
+ tilt
129
+ hashdiff (1.1.0)
130
+ i18n (1.14.5)
131
+ concurrent-ruby (~> 1.0)
132
+ io-console (0.7.2)
133
+ irb (1.14.0)
134
+ rdoc (>= 4.0.0)
135
+ reline (>= 0.4.2)
136
+ json (2.7.2)
137
+ language_server-protocol (3.17.0.3)
138
+ listen (3.9.0)
139
+ rb-fsevent (~> 0.10, >= 0.10.3)
140
+ rb-inotify (~> 0.9, >= 0.9.10)
141
+ loofah (2.22.0)
142
+ crass (~> 1.0.2)
143
+ nokogiri (>= 1.12.0)
144
+ lumberjack (1.2.10)
145
+ memory_profiler (1.0.2)
146
+ method_source (1.1.0)
147
+ mimic (0.4.4)
148
+ json
149
+ plist (~> 3.1.0)
150
+ rack
151
+ sinatra
152
+ thin
153
+ mini_mime (1.1.5)
154
+ minitest (5.24.1)
155
+ minitest-fail-fast (0.1.0)
156
+ minitest (~> 5)
157
+ minitest-hooks (1.5.1)
158
+ minitest (> 5.3)
159
+ minitest-reporters (1.7.1)
160
+ ansi
161
+ builder
162
+ minitest (>= 5.0)
163
+ ruby-progressbar
164
+ multi_test (1.1.0)
165
+ mustermann (3.0.0)
166
+ ruby2_keywords (~> 0.0.1)
167
+ mutex_m (0.2.0)
168
+ nenv (0.3.0)
169
+ nokogiri (1.16.6-arm64-darwin)
170
+ racc (~> 1.4)
171
+ nokogiri (1.16.6-x86_64-linux)
172
+ racc (~> 1.4)
173
+ notiffany (0.1.3)
174
+ nenv (~> 0.1)
175
+ shellany (~> 0.0)
176
+ openssl (3.2.0)
177
+ parallel (1.25.1)
178
+ parser (3.3.4.0)
179
+ ast (~> 2.4.1)
180
+ racc
181
+ plist (3.1.0)
182
+ pry (0.14.2)
183
+ coderay (~> 1.1)
184
+ method_source (~> 1.0)
185
+ psych (5.1.2)
186
+ stringio
187
+ public_suffix (6.0.0)
188
+ racc (1.8.0)
189
+ rack (2.2.9)
190
+ rack-protection (3.2.0)
191
+ base64 (>= 0.1.0)
192
+ rack (~> 2.2, >= 2.2.4)
193
+ rack-session (1.0.2)
194
+ rack (< 3)
195
+ rack-test (2.1.0)
196
+ rack (>= 1.3)
197
+ rackup (1.0.0)
198
+ rack (< 3)
199
+ webrick
200
+ rails-dom-testing (2.2.0)
201
+ activesupport (>= 5.0.0)
202
+ minitest
203
+ nokogiri (>= 1.6)
204
+ rails-html-sanitizer (1.6.0)
205
+ loofah (~> 2.21)
206
+ nokogiri (~> 1.14)
207
+ railties (7.1.3.4)
208
+ actionpack (= 7.1.3.4)
209
+ activesupport (= 7.1.3.4)
210
+ irb
211
+ rackup (>= 1.0.0)
212
+ rake (>= 12.2)
213
+ thor (~> 1.0, >= 1.2.2)
214
+ zeitwerk (~> 2.6)
215
+ rainbow (3.1.1)
216
+ rake (13.2.1)
217
+ random-port (0.7.1)
218
+ rb-fsevent (0.11.2)
219
+ rb-inotify (0.11.1)
220
+ ffi (~> 1.0)
221
+ rdoc (6.7.0)
222
+ psych (>= 4.0.0)
223
+ regexp_parser (2.9.2)
224
+ reline (0.5.9)
225
+ io-console (~> 0.5)
226
+ rexml (3.3.2)
227
+ strscan
228
+ rspec-core (3.13.0)
229
+ rspec-support (~> 3.13.0)
230
+ rspec-expectations (3.13.1)
231
+ diff-lcs (>= 1.2.0, < 2.0)
232
+ rspec-support (~> 3.13.0)
233
+ rspec-mocks (3.13.1)
234
+ diff-lcs (>= 1.2.0, < 2.0)
235
+ rspec-support (~> 3.13.0)
236
+ rspec-rails (6.1.0)
237
+ actionpack (>= 6.1)
238
+ activesupport (>= 6.1)
239
+ railties (>= 6.1)
240
+ rspec-core (~> 3.12)
241
+ rspec-expectations (~> 3.12)
242
+ rspec-mocks (~> 3.12)
243
+ rspec-support (~> 3.12)
244
+ rspec-support (3.13.1)
245
+ rubocop (1.65.0)
246
+ json (~> 2.3)
247
+ language_server-protocol (>= 3.17.0)
248
+ parallel (~> 1.10)
249
+ parser (>= 3.3.0.2)
250
+ rainbow (>= 2.2.2, < 4.0)
251
+ regexp_parser (>= 2.4, < 3.0)
252
+ rexml (>= 3.2.5, < 4.0)
253
+ rubocop-ast (>= 1.31.1, < 2.0)
254
+ ruby-progressbar (~> 1.7)
255
+ unicode-display_width (>= 2.4.0, < 3.0)
256
+ rubocop-ast (1.31.3)
257
+ parser (>= 3.3.1.0)
258
+ rubocop-rspec (3.0.3)
259
+ rubocop (~> 1.61)
260
+ ruby-progressbar (1.13.0)
261
+ ruby2_keywords (0.0.5)
262
+ semantic (1.6.1)
263
+ shellany (0.0.1)
264
+ simplecov (0.22.0)
265
+ docile (~> 1.1)
266
+ simplecov-html (~> 0.11)
267
+ simplecov_json_formatter (~> 0.1)
268
+ simplecov-html (0.12.3)
269
+ simplecov_json_formatter (0.1.4)
270
+ sinatra (3.2.0)
271
+ mustermann (~> 3.0)
272
+ rack (~> 2.2, >= 2.2.4)
273
+ rack-protection (= 3.2.0)
274
+ tilt (~> 2.0)
275
+ slop (4.10.1)
276
+ stringio (3.1.1)
277
+ strscan (3.1.0)
278
+ sys-proctable (1.3.0)
279
+ ffi (~> 1.1)
280
+ sys-uname (1.3.0)
281
+ ffi (~> 1.1)
282
+ temple (0.10.3)
283
+ thin (1.8.2)
284
+ daemons (~> 1.0, >= 1.0.9)
285
+ eventmachine (~> 1.0, >= 1.0.4)
286
+ rack (>= 1, < 3)
287
+ thor (1.3.1)
288
+ threads (0.4.0)
289
+ backtrace (~> 0)
290
+ concurrent-ruby (~> 1.0)
291
+ tilt (2.4.0)
292
+ total (0.4.1)
293
+ typhoeus (1.4.1)
294
+ ethon (>= 0.9.0)
295
+ tzinfo (2.0.6)
296
+ concurrent-ruby (~> 1.0)
297
+ unicode-display_width (2.5.0)
298
+ usagewatch (0.0.7)
299
+ usagewatch_ext (0.2.1)
300
+ usagewatch (~> 0.0.6)
301
+ webmock (3.23.1)
302
+ addressable (>= 2.8.0)
303
+ crack (>= 0.3.2)
304
+ hashdiff (>= 0.4.0, < 2.0.0)
305
+ webrick (1.8.1)
306
+ xcop (0.7.1)
307
+ differ (~> 0.1.2)
308
+ nokogiri (~> 1.10)
309
+ rainbow (~> 3.0)
310
+ slop (~> 4.4)
311
+ yard (0.9.36)
312
+ zache (0.13.1)
313
+ zeitwerk (2.6.16)
314
+ zold-score (0.5.0)
315
+
316
+ PLATFORMS
317
+ arm64-darwin-22
318
+ x86_64-linux
319
+
320
+ DEPENDENCIES
321
+ cucumber (= 9.2.0)
322
+ guard (= 2.18.1)
323
+ guard-minitest (= 2.4.6)
324
+ minitest (= 5.24.1)
325
+ minitest-fail-fast (= 0.1.0)
326
+ minitest-hooks (= 1.5.1)
327
+ minitest-reporters (= 1.7.1)
328
+ rake (= 13.2.1)
329
+ random-port (~> 0)
330
+ rspec-rails (= 6.1.0)
331
+ rubocop (= 1.65.0)
332
+ rubocop-rspec (= 3.0.3)
333
+ simplecov (= 0.22.0)
334
+ webmock (= 3.23.1)
335
+ xcop (>= 0.6)
336
+ yard (= 0.9.36)
337
+ zold!
338
+
339
+ BUNDLED WITH
340
+ 2.4.10
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  (The MIT License)
2
2
 
3
- Copyright (c) 2018 Yegor Bugayenko
3
+ Copyright (c) 2018-2024 Zerocracy
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the 'Software'), to deal
data/Rakefile CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -34,7 +34,7 @@ def version
34
34
  Gem::Specification.load(Dir['*.gemspec'].first).version
35
35
  end
36
36
 
37
- task default: %i[clean test features rubocop xcop copyright]
37
+ task default: %i[clean test features rubocop yard xcop copyright]
38
38
 
39
39
  require 'rake/testtask'
40
40
  desc 'Run all unit tests'
@@ -47,15 +47,6 @@ Rake::TestTask.new(:test) do |test|
47
47
  test.warning = false
48
48
  end
49
49
 
50
- require 'rdoc/task'
51
- desc 'Build RDoc documentation'
52
- Rake::RDocTask.new do |rdoc|
53
- rdoc.rdoc_dir = 'rdoc'
54
- rdoc.title = "#{name} #{version}"
55
- rdoc.rdoc_files.include('README*')
56
- rdoc.rdoc_files.include('lib/**/*.rb')
57
- end
58
-
59
50
  require 'rubocop/rake_task'
60
51
  desc 'Run RuboCop on all directories'
61
52
  RuboCop::RakeTask.new(:rubocop) do |task|
@@ -63,6 +54,12 @@ RuboCop::RakeTask.new(:rubocop) do |task|
63
54
  task.requires << 'rubocop-rspec'
64
55
  end
65
56
 
57
+ require 'yard'
58
+ desc 'Build Yard documentation'
59
+ YARD::Rake::YardocTask.new do |t|
60
+ t.files = ['lib/**/*.rb']
61
+ end
62
+
66
63
  require 'cucumber/rake/task'
67
64
  Cucumber::Rake::Task.new(:features) do |t|
68
65
  t.cucumber_opts = 'features --format pretty'
@@ -77,7 +74,7 @@ desc 'Validate all XML/XSL/XSD/HTML files for formatting'
77
74
  Xcop::RakeTask.new :xcop do |task|
78
75
  task.license = 'LICENSE.txt'
79
76
  task.includes = ['**/*.xml', '**/*.xsl', '**/*.xsd', '**/*.html']
80
- task.excludes = ['target/**/*', 'coverage/**/*', 'wp/**/*']
77
+ task.excludes = ['target/**/*', 'coverage/**/*', 'wp/**/*', '.yardoc/**/*', 'doc/**/*']
81
78
  end
82
79
 
83
80
  task :copyright do
data/bin/zold CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  # encoding: utf-8
3
3
  #
4
- # Copyright (c) 2018-2023 Zerocracy
4
+ # Copyright (c) 2018-2024 Zerocracy
5
5
  #
6
6
  # Permission is hereby granted, free of charge, to any person obtaining a copy
7
7
  # of this software and associated documentation files (the 'Software'), to deal
data/cucumber.yml CHANGED
@@ -1,3 +1,23 @@
1
+ # Copyright (c) 2018-2024 Zerocracy
2
+ #
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the 'Software'), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
9
+ #
10
+ # The above copyright notice and this permission notice shall be included in all
11
+ # copies or substantial portions of the Software.
12
+ #
13
+ # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ # SOFTWARE.
20
+ ---
1
21
  default: --format pretty
2
22
  travis: --format progress
3
23
  html_report: --format progress --format html --out=features_report.html
data/deploy.sh CHANGED
@@ -1,4 +1,24 @@
1
1
  #!/bin/bash
2
+ # Copyright (c) 2018-2024 Zerocracy
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ # of this software and associated documentation files (the 'Software'), to deal
6
+ # in the Software without restriction, including without limitation the rights
7
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ # copies of the Software, and to permit persons to whom the Software is
9
+ # furnished to do so, subject to the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be included in all
12
+ # copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFINGEMENT. IN NO EVENT SHALL THE
17
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ # SOFTWARE.
21
+
2
22
  set -e
3
23
  set -x
4
24
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2018-2023 Zerocracy
3
+ # Copyright (c) 2018-2024 Zerocracy
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,24 @@
1
1
  #!/bin/bash
2
+ # Copyright (c) 2018-2024 Zerocracy
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ # of this software and associated documentation files (the 'Software'), to deal
6
+ # in the Software without restriction, including without limitation the rights
7
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ # copies of the Software, and to permit persons to whom the Software is
9
+ # furnished to do so, subject to the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be included in all
12
+ # copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFINGEMENT. IN NO EVENT SHALL THE
17
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ # SOFTWARE.
21
+
2
22
  set -e
3
23
  set -x
4
24
  shopt -s expand_aliases
@@ -8,7 +28,7 @@ export RUBYOPT="-W0"
8
28
  alias zold="$1 --ignore-this-stupid-option --halt-code=test --ignore-global-config --trace --network=test --no-colors --dump-errors"
9
29
 
10
30
  function reserve_port {
11
- python -c 'import socket; s=socket.socket(); s.bind(("", 0)); print(s.getsockname()[1]); s.close()'
31
+ python -c 'import socket; s=socket.socket(); s.bind(("127.0.0.1", 0)); print(s.getsockname()[1]); s.close()'
12
32
  }
13
33
 
14
34
  function wait_for_url {
@@ -1,3 +1,22 @@
1
1
  #!/bin/bash
2
+ # Copyright (c) 2018-2024 Zerocracy
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ # of this software and associated documentation files (the 'Software'), to deal
6
+ # in the Software without restriction, including without limitation the rights
7
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ # copies of the Software, and to permit persons to whom the Software is
9
+ # furnished to do so, subject to the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be included in all
12
+ # copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFINGEMENT. IN NO EVENT SHALL THE
17
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ # SOFTWARE.
2
21
 
3
22
  zold score --host=zold.io --port=4096 --invoice=CALCSCORE@ffffffffffffffff --strength=2 --max=5
@@ -1,4 +1,23 @@
1
1
  #!/bin/bash
2
+ # Copyright (c) 2018-2024 Zerocracy
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ # of this software and associated documentation files (the 'Software'), to deal
6
+ # in the Software without restriction, including without limitation the rights
7
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ # copies of the Software, and to permit persons to whom the Software is
9
+ # furnished to do so, subject to the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be included in all
12
+ # copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFINGEMENT. IN NO EVENT SHALL THE
17
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ # SOFTWARE.
2
21
 
3
22
  function start_node {
4
23
  port=$(reserve_port)
@@ -1,4 +1,23 @@
1
1
  #!/bin/bash
2
+ # Copyright (c) 2018-2024 Zerocracy
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ # of this software and associated documentation files (the 'Software'), to deal
6
+ # in the Software without restriction, including without limitation the rights
7
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ # copies of the Software, and to permit persons to whom the Software is
9
+ # furnished to do so, subject to the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be included in all
12
+ # copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFINGEMENT. IN NO EVENT SHALL THE
17
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ # SOFTWARE.
2
21
 
3
22
  zold --help
4
23
  declare -a commands=(node create invoice remote pay show fetch clean diff merge propagate pull push taxes)