zold 0.32.0 → 0.32.1

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 (171) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/lib/zold/version.rb +1 -1
  4. data/zold.gemspec +1 -1
  5. metadata +2 -168
  6. data/.0pdd.yml +0 -12
  7. data/.gitattributes +0 -9
  8. data/.github/typos.toml +0 -11
  9. data/.github/workflows/actionlint.yml +0 -25
  10. data/.github/workflows/bashate.yml +0 -25
  11. data/.github/workflows/codecov.yml +0 -27
  12. data/.github/workflows/copyrights.yml +0 -15
  13. data/.github/workflows/hadolint.yml +0 -14
  14. data/.github/workflows/markdown-lint.yml +0 -19
  15. data/.github/workflows/pdd.yml +0 -19
  16. data/.github/workflows/rake.yml +0 -31
  17. data/.github/workflows/reuse.yml +0 -19
  18. data/.github/workflows/shellcheck.yml +0 -19
  19. data/.github/workflows/typos.yml +0 -21
  20. data/.github/workflows/xcop.yml +0 -15
  21. data/.github/workflows/yamllint.yml +0 -19
  22. data/.gitignore +0 -15
  23. data/.pdd +0 -7
  24. data/.rubocop.yml +0 -66
  25. data/.ruby-version +0 -1
  26. data/.rultor.yml +0 -41
  27. data/cucumber.yml +0 -6
  28. data/features/cli.feature +0 -18
  29. data/features/gem_package.feature +0 -28
  30. data/features/step_definitions/steps.rb +0 -67
  31. data/features/support/env.rb +0 -9
  32. data/fixtures/448b451bc62e8e16.z +0 -1005
  33. data/fixtures/id_rsa +0 -51
  34. data/fixtures/id_rsa-2 +0 -51
  35. data/fixtures/id_rsa-2.pub +0 -1
  36. data/fixtures/id_rsa.pub +0 -1
  37. data/fixtures/keys/1.pub +0 -1
  38. data/fixtures/keys/2 +0 -51
  39. data/fixtures/keys/2.pub +0 -1
  40. data/fixtures/merge/asserts.rb +0 -20
  41. data/fixtures/merge/id_rsa +0 -51
  42. data/fixtures/merge/id_rsa.pub +0 -1
  43. data/fixtures/merge/into_no_wallet/assert.rb +0 -8
  44. data/fixtures/merge/into_no_wallet/copies/0123456789abcdef/1.zc +0 -6
  45. data/fixtures/merge/into_no_wallet/copies/0123456789abcdef/scores.zc +0 -1
  46. data/fixtures/merge/into_no_wallet/opts +0 -1
  47. data/fixtures/merge/legacy_negatives_stay/0123456789abcdef.z +0 -6
  48. data/fixtures/merge/legacy_negatives_stay/assert.rb +0 -8
  49. data/fixtures/merge/legacy_negatives_stay/copies/0123456789abcdef/1.zc +0 -6
  50. data/fixtures/merge/legacy_negatives_stay/copies/0123456789abcdef/scores.zc +0 -1
  51. data/fixtures/merge/legacy_negatives_stay/opts +0 -2
  52. data/fixtures/merge/missed_wallets/0000000000000000.z +0 -6
  53. data/fixtures/merge/missed_wallets/0123456789abcdef.z +0 -4
  54. data/fixtures/merge/missed_wallets/assert.rb +0 -8
  55. data/fixtures/merge/missed_wallets/copies/0123456789abcdef/1.zc +0 -8
  56. data/fixtures/merge/missed_wallets/copies/0123456789abcdef/scores.zc +0 -1
  57. data/fixtures/merge/missed_wallets/opts +0 -3
  58. data/fixtures/merge/negative_overwriting/0123456789abcdef.z +0 -6
  59. data/fixtures/merge/negative_overwriting/146b852f2d9ad984.z +0 -6
  60. data/fixtures/merge/negative_overwriting/assert.rb +0 -8
  61. data/fixtures/merge/negative_overwriting/copies/0123456789abcdef/1.zc +0 -6
  62. data/fixtures/merge/negative_overwriting/copies/0123456789abcdef/scores.zc +0 -1
  63. data/fixtures/merge/negative_overwriting/opts +0 -2
  64. data/fixtures/merge/negatives_in_between/0000000000000000.z +0 -6
  65. data/fixtures/merge/negatives_in_between/0123456789abcdef.z +0 -4
  66. data/fixtures/merge/negatives_in_between/assert.rb +0 -8
  67. data/fixtures/merge/negatives_in_between/copies/0123456789abcdef/1.zc +0 -6
  68. data/fixtures/merge/negatives_in_between/copies/0123456789abcdef/2.zc +0 -6
  69. data/fixtures/merge/negatives_in_between/copies/0123456789abcdef/3.zc +0 -6
  70. data/fixtures/merge/negatives_in_between/copies/0123456789abcdef/scores.zc +0 -3
  71. data/fixtures/merge/negatives_in_between/opts +0 -1
  72. data/fixtures/merge/random_expenses/0000000000000000.z +0 -6
  73. data/fixtures/merge/random_expenses/0123456789abcdef.z +0 -6
  74. data/fixtures/merge/random_expenses/assert.rb +0 -8
  75. data/fixtures/merge/random_expenses/copies/0123456789abcdef/1.zc +0 -7
  76. data/fixtures/merge/random_expenses/copies/0123456789abcdef/2.zc +0 -7
  77. data/fixtures/merge/random_expenses/copies/0123456789abcdef/3.zc +0 -7
  78. data/fixtures/merge/random_expenses/copies/0123456789abcdef/4.zc +0 -7
  79. data/fixtures/merge/random_expenses/copies/0123456789abcdef/5.zc +0 -7
  80. data/fixtures/merge/random_expenses/copies/0123456789abcdef/scores.zc +0 -5
  81. data/fixtures/merge/random_expenses/opts +0 -1
  82. data/fixtures/merge/simple_case/0000000000000000.z +0 -6
  83. data/fixtures/merge/simple_case/0123456789abcdef.z +0 -4
  84. data/fixtures/merge/simple_case/assert.rb +0 -8
  85. data/fixtures/merge/simple_case/copies/0123456789abcdef/1.zc +0 -6
  86. data/fixtures/merge/simple_case/copies/0123456789abcdef/scores.zc +0 -1
  87. data/fixtures/merge/simple_case/opts +0 -1
  88. data/fixtures/merge/unconfirmed_income/0123456789abcdef.z +0 -4
  89. data/fixtures/merge/unconfirmed_income/assert.rb +0 -8
  90. data/fixtures/merge/unconfirmed_income/copies/0123456789abcdef/1.zc +0 -6
  91. data/fixtures/merge/unconfirmed_income/copies/0123456789abcdef/scores.zc +0 -1
  92. data/fixtures/merge/unconfirmed_income/opts +0 -3
  93. data/fixtures/scripts/_head.sh +0 -72
  94. data/fixtures/scripts/calculate-scores.sh +0 -5
  95. data/fixtures/scripts/distribute-wallet.sh +0 -88
  96. data/fixtures/scripts/print-helps.sh +0 -9
  97. data/fixtures/scripts/pull-on-start.sh +0 -35
  98. data/fixtures/scripts/push-and-pull.sh +0 -46
  99. data/fixtures/scripts/redeploy-on-upgrade.sh +0 -40
  100. data/fixtures/scripts/spread-wallets.sh +0 -56
  101. data/renovate.json +0 -6
  102. data/test/commands/routines/test_audit.rb +0 -23
  103. data/test/commands/routines/test_gc.rb +0 -52
  104. data/test/commands/routines/test_reconcile.rb +0 -33
  105. data/test/commands/routines/test_reconnect.rb +0 -28
  106. data/test/commands/routines/test_retire.rb +0 -22
  107. data/test/commands/test_alias.rb +0 -58
  108. data/test/commands/test_calculate.rb +0 -22
  109. data/test/commands/test_clean.rb +0 -55
  110. data/test/commands/test_create.rb +0 -32
  111. data/test/commands/test_diff.rb +0 -43
  112. data/test/commands/test_fetch.rb +0 -144
  113. data/test/commands/test_invoice.rb +0 -32
  114. data/test/commands/test_list.rb +0 -29
  115. data/test/commands/test_merge.rb +0 -106
  116. data/test/commands/test_node.rb +0 -50
  117. data/test/commands/test_pay.rb +0 -203
  118. data/test/commands/test_propagate.rb +0 -33
  119. data/test/commands/test_pull.rb +0 -52
  120. data/test/commands/test_push.rb +0 -75
  121. data/test/commands/test_remote.rb +0 -247
  122. data/test/commands/test_remove.rb +0 -48
  123. data/test/commands/test_show.rb +0 -30
  124. data/test/commands/test_taxes.rb +0 -58
  125. data/test/fake_home.rb +0 -87
  126. data/test/node/fake_entrance.rb +0 -26
  127. data/test/node/fake_node.rb +0 -88
  128. data/test/node/test_async_entrance.rb +0 -85
  129. data/test/node/test_entrance.rb +0 -64
  130. data/test/node/test_farm.rb +0 -159
  131. data/test/node/test_farmers.rb +0 -58
  132. data/test/node/test_front.rb +0 -379
  133. data/test/node/test_nodup_entrance.rb +0 -31
  134. data/test/node/test_nospam_entrance.rb +0 -31
  135. data/test/node/test_safe_entrance.rb +0 -41
  136. data/test/node/test_spread_entrance.rb +0 -49
  137. data/test/node/test_sync_entrance.rb +0 -23
  138. data/test/node/test_trace.rb +0 -18
  139. data/test/test__helper.rb +0 -113
  140. data/test/test_age.rb +0 -37
  141. data/test/test_amount.rb +0 -62
  142. data/test/test_cached_wallets.rb +0 -55
  143. data/test/test_copies.rb +0 -127
  144. data/test/test_dir_items.rb +0 -72
  145. data/test/test_gem.rb +0 -23
  146. data/test/test_hands.rb +0 -51
  147. data/test/test_hexnum.rb +0 -18
  148. data/test/test_http.rb +0 -207
  149. data/test/test_hungry_wallets.rb +0 -72
  150. data/test/test_id.rb +0 -61
  151. data/test/test_json_page.rb +0 -29
  152. data/test/test_key.rb +0 -81
  153. data/test/test_metronome.rb +0 -71
  154. data/test/test_patch.rb +0 -160
  155. data/test/test_prefixes.rb +0 -31
  156. data/test/test_remotes.rb +0 -301
  157. data/test/test_signature.rb +0 -31
  158. data/test/test_size.rb +0 -21
  159. data/test/test_sync_wallets.rb +0 -39
  160. data/test/test_tax.rb +0 -153
  161. data/test/test_thread_pool.rb +0 -71
  162. data/test/test_tree_wallets.rb +0 -65
  163. data/test/test_txn.rb +0 -71
  164. data/test/test_upgrades.rb +0 -81
  165. data/test/test_verbose_thread.rb +0 -37
  166. data/test/test_version.rb +0 -17
  167. data/test/test_wallet.rb +0 -300
  168. data/test/test_wallets.rb +0 -67
  169. data/test/test_zold.rb +0 -81
  170. data/test/upgrades/test_delete_banned_wallets.rb +0 -29
  171. data/test/upgrades/test_protocol_up.rb +0 -24
data/.rultor.yml DELETED
@@ -1,41 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2018-2025 Zerocracy
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- docker:
6
- image: yegor256/python
7
- architect:
8
- - yegor256
9
- assets:
10
- rubygems.yml: yegor256/home#assets/rubygems.yml
11
- docker-password: yegor256/home#assets/docker-password
12
- install: |
13
- pdd -f /dev/null -v
14
- sudo apt-get -y update
15
- sudo apt-get install --yes libcurl4-openssl-dev netcat-openbsd
16
- bundle update --no-color
17
- release:
18
- pre: false
19
- script: |-
20
- [[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1
21
- export RUBYOPT="-W0"
22
- sed -i "s/0\.0\.0/${tag}/g" lib/zold/version.rb
23
- bundle exec rake --quiet
24
- git add lib/zold/version.rb
25
- git commit -m "version set to ${tag}"
26
- gem build zold.gemspec
27
- chmod 0600 ../rubygems.yml
28
- gem push *.gem --config-file ../rubygems.yml
29
-
30
- sed -i -e "s/0.0.0/${tag}/" Dockerfile
31
- git add Dockerfile
32
- git commit -m "version set to ${tag}"
33
- repo=yegor256/zold
34
- sudo docker build "$(pwd)" --tag "${repo}:${tag}"
35
- sudo docker build "$(pwd)" --tag "${repo}:latest"
36
- cat ../docker-password | sudo docker login --password-stdin -u yegor256
37
- sudo docker push "${repo}:${tag}"
38
- sudo docker push "${repo}:latest"
39
- merge:
40
- script: |-
41
- bundle exec rake --quiet
data/cucumber.yml DELETED
@@ -1,6 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2018-2025 Zerocracy
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- default: --format pretty
5
- travis: --format progress
6
- html_report: --format progress --format html --out=features_report.html
data/features/cli.feature DELETED
@@ -1,18 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2018-2025 Zerocracy
2
- # SPDX-License-Identifier: MIT
3
- Feature: Command Line Processing
4
- As an payment originator I want to be able to use
5
- Zold as a command line tool
6
-
7
- Scenario: Help can be printed
8
- When I run bin/zold with "-h"
9
- Then Exit code is zero
10
- And Stdout contains "--help"
11
-
12
- Scenario: Version can be printed
13
- When I run bin/zold with "--version"
14
- Then Exit code is zero
15
-
16
- Scenario: Wallet can be created
17
- When I run bin/zold with "--trace --public-key=id_rsa.pub create"
18
- Then Exit code is zero
@@ -1,28 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2018-2025 Zerocracy
2
- # SPDX-License-Identifier: MIT
3
- Feature: Gem Package
4
- As a source code writer I want to be able to
5
- package the Gem into .gem file
6
-
7
- Scenario: Gem can be packaged
8
- Given It is Unix
9
- Given I have "execs.rb" file with content:
10
- """
11
- #!/usr/bin/env ruby
12
- require 'rubygems'
13
- spec = Gem::Specification::load('./spec.rb')
14
- if spec.executables.empty?
15
- fail 'no executables: ' + IO.read('./spec.rb')
16
- end
17
- """
18
- When I run bash with:
19
- """
20
- set -x
21
- set -e
22
- cd zold
23
- gem build zold.gemspec
24
- gem specification --ruby zold-*.gem > ../spec.rb
25
- cd ..
26
- ruby execs.rb
27
- """
28
- Then Exit code is zero
@@ -1,67 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # SPDX-FileCopyrightText: Copyright (c) 2018-2025 Zerocracy
4
- # SPDX-License-Identifier: MIT
5
-
6
- require 'tmpdir'
7
- require 'slop'
8
- require 'English'
9
- require_relative '../../lib/zold'
10
-
11
- Before do
12
- @cwd = Dir.pwd
13
- @dir = Dir.mktmpdir('test')
14
- FileUtils.copy('fixtures/id_rsa', @dir)
15
- FileUtils.copy('fixtures/id_rsa.pub', @dir)
16
- FileUtils.mkdir_p(@dir)
17
- Dir.chdir(@dir)
18
- end
19
-
20
- After do
21
- Dir.chdir(@cwd)
22
- FileUtils.rm_rf(@dir)
23
- end
24
-
25
- When(%r{^I run ([a-z/-]+) with "([^"]*)"$}) do |cmd, args|
26
- home = File.expand_path(File.join(File.dirname(__FILE__), '../..'))
27
- @stdout = `ruby -I#{home}/lib #{home}/#{cmd} #{args} 2>&1`
28
- @exitstatus = $CHILD_STATUS.exitstatus
29
- end
30
-
31
- When(/^I run bash with:$/) do |text|
32
- FileUtils.copy_entry(@cwd, File.join(@dir, 'zold'))
33
- File.write('run.sh', text)
34
- @stdout = `/bin/bash run.sh 2>&1`
35
- @exitstatus = $CHILD_STATUS.exitstatus
36
- end
37
-
38
- When(/^I have "([^"]*)" file with content:$/) do |file, text|
39
- FileUtils.mkdir_p(File.dirname(file)) unless File.exist?(file)
40
- File.open(file, 'w:ASCII-8BIT') do |f|
41
- f.write(text.gsub('\\xFF', 0xFF.chr))
42
- end
43
- end
44
-
45
- Then(/^Stdout contains "([^"]*)"$/) do |txt|
46
- raise "STDOUT doesn't contain '#{txt}':\n#{@stdout}" unless @stdout.include?(txt)
47
- end
48
-
49
- Then(/^Stdout is empty$/) do
50
- raise "STDOUT is not empty:\n#{@stdout}" unless @stdout == ''
51
- end
52
-
53
- Then(/^Exit code is zero$/) do
54
- raise "Non-zero exit #{@exitstatus}:\n#{@stdout}" unless @exitstatus.zero?
55
- end
56
-
57
- Then(/^Exit code is not zero$/) do
58
- raise 'Zero exit code' if @exitstatus.zero?
59
- end
60
-
61
- Given(/^It is Unix$/) do
62
- pending if Gem.win_platform?
63
- end
64
-
65
- Given(/^It is Windows$/) do
66
- pending unless Gem.win_platform?
67
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # SPDX-FileCopyrightText: Copyright (c) 2018-2025 Zerocracy
4
- # SPDX-License-Identifier: MIT
5
-
6
- ENV['RACK_ENV'] = 'test'
7
-
8
- require 'simplecov'
9
- require_relative '../../lib/zold'