++ dirname ./run.sh
+ cd .
+ echo 1136
+ echo '2.0-SNAPSHOT BUILD'
2.0-SNAPSHOT BUILD
+ date
Thu Dec 18 14:43:20 UTC 2025
+ uptime
14:43:20 up 1 min, 0 users, load average: 1.52, 0.45, 0.16
+ head=git@github.com:yegor256/erc20.git
+ ff=default
+ image=yegor256/ruby
+ rebase=false
+ squash=false
+ head_branch=master
+ author=yegor256
+ tag=0.2.4
+ vars=('--env=head=git@github.com:yegor256/erc20.git' '--env=tag=0.2.4' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/erc20.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=0.2.4'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''bundle install --no-color'\'' '\'';'\'' '\''[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1'\'' '\'';'\'' '\''DONCE_SUDO=true bundle exec rake'\'' '\'';'\'' '\''rm -rf *.gem'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/g" lib/erc20/erc20.rb'\'' '\'';'\'' '\''git add lib/erc20/erc20.rb'\'' '\'';'\'' '\''git commit -m "version set to ${tag}"'\'' '\'';'\'' '\''gem build erc20.gemspec'\'' '\'';'\'' '\''chmod 0600 ../rubygems.yml'\'' '\'';'\'' '\''gem push *.gem --config-file ../rubygems.yml'\'' '\'';'\'' )' '--env=head_branch=master' '--env=author=yegor256')
+ scripts=('export '\''head=git@github.com:yegor256/erc20.git'\''' ';' 'export '\''tag=0.2.4'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'bundle install --no-color' ';' '[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1' ';' 'DONCE_SUDO=true bundle exec rake' ';' 'rm -rf *.gem' ';' 'sed -i "s/0\.0\.0/${tag}/g" lib/erc20/erc20.rb' ';' 'git add lib/erc20/erc20.rb' ';' 'git commit -m "version set to ${tag}"' ';' 'gem build erc20.gemspec' ';' 'chmod 0600 ../rubygems.yml' ';' 'gem push *.gem --config-file ../rubygems.yml' ';')
+ directory=
+ container=yegor256_erc20_110
+ as_root=false
+ set -e -o pipefail
+ hostname
ip-172-31-25-6
+ pwd
/tmp/rultor-tPNx
+ git --version
git version 2.34.1
+ docker --version
Docker version 25.0.3, build 4debf41
+ mkdir -p /home/ubuntu/.ssh
+ echo -e 'Host github.com\n\tStrictHostKeyChecking no\n'
+ chmod 600 /home/ubuntu/.ssh/config
+ git clone --recurse-submodules git@github.com:yegor256/erc20.git repo
Cloning into 'repo'...
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
+ cd repo
+ git config user.email gpg@rultor.com
+ git config user.name Rultor.com
+ '[' -z 'export '\''head=git@github.com:yegor256/erc20.git'\''' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''head=git@github.com:yegor256/erc20.git'\''' ';' 'export '\''tag=0.2.4'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'bundle install --no-color' ';' '[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1' ';' 'DONCE_SUDO=true bundle exec rake' ';' 'rm -rf *.gem' ';' 'sed -i "s/0\.0\.0/${tag}/g" lib/erc20/erc20.rb' ';' 'git add lib/erc20/erc20.rb' ';' 'git commit -m "version set to ${tag}"' ';' 'gem build erc20.gemspec' ';' 'chmod 0600 ../rubygems.yml' ';' 'gem push *.gem --config-file ../rubygems.yml' ';'
+ sensitive=()
+ set -ex -o pipefail
+ '[' -z 0.2.4 ']'
+ [[ 0.2.4 =~ ^[a-zA-Z0-9\.\-]+$ ]]
+ echo 'tag name is valid: "0.2.4"'
tag name is valid: "0.2.4"
+ cd repo
++ git tag -l 0.2.4
+ '[' -n '' ']'
+ BRANCH_NAME=__rultor
++ wc -l
++ git show-branch __rultor
+ '[' 0 -gt 0 ']'
+ export BRANCH_NAME
+ git checkout -b __rultor
Switched to a new branch '__rultor'
+ docker_when_possible
+ true
++ tail -n 1
++ sed 's/ /\n/g'
++ uptime
+ load=0.17
++ bc
++ echo 0.17 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 0.17, low enough to run a new Docker container'
load average is 0.17, low enough to run a new Docker container
+ break
+ cd ..
+ '[' -n '' ']'
+ use_image=yegor256/ruby
+ docker pull yegor256/ruby
Using default tag: latest
latest: Pulling from yegor256/ruby
632ef5283d0f: Pulling fs layer
2be42d221bda: Pulling fs layer
54d1704eb717: Pulling fs layer
f0f51ee5c79e: Pulling fs layer
ec11ce133a4e: Pulling fs layer
71ab1586461a: Pulling fs layer
8e0e2fc3c108: Pulling fs layer
4f4fb700ef54: Pulling fs layer
72e45e6fed5c: Pulling fs layer
99e89f339e27: Pulling fs layer
3f0278ea12d5: Pulling fs layer
11f168291684: Pulling fs layer
0943aaa8f703: Pulling fs layer
fd13cdf0383c: Pulling fs layer
f0f51ee5c79e: Waiting
ec11ce133a4e: Waiting
71ab1586461a: Waiting
8e0e2fc3c108: Waiting
4f4fb700ef54: Waiting
72e45e6fed5c: Waiting
99e89f339e27: Waiting
3f0278ea12d5: Waiting
11f168291684: Waiting
0943aaa8f703: Waiting
fd13cdf0383c: Waiting
2be42d221bda: Verifying Checksum
2be42d221bda: Download complete
54d1704eb717: Verifying Checksum
54d1704eb717: Download complete
632ef5283d0f: Verifying Checksum
632ef5283d0f: Download complete
ec11ce133a4e: Verifying Checksum
ec11ce133a4e: Download complete
8e0e2fc3c108: Verifying Checksum
8e0e2fc3c108: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
72e45e6fed5c: Verifying Checksum
72e45e6fed5c: Download complete
71ab1586461a: Verifying Checksum
71ab1586461a: Download complete
99e89f339e27: Verifying Checksum
99e89f339e27: Download complete
11f168291684: Verifying Checksum
11f168291684: Download complete
0943aaa8f703: Verifying Checksum
0943aaa8f703: Download complete
fd13cdf0383c: Verifying Checksum
fd13cdf0383c: Download complete
f0f51ee5c79e: Verifying Checksum
f0f51ee5c79e: Download complete
3f0278ea12d5: Verifying Checksum
3f0278ea12d5: Download complete
632ef5283d0f: Pull complete
2be42d221bda: Pull complete
54d1704eb717: Pull complete
f0f51ee5c79e: Pull complete
ec11ce133a4e: Pull complete
71ab1586461a: Pull complete
8e0e2fc3c108: Pull complete
4f4fb700ef54: Pull complete
72e45e6fed5c: Pull complete
99e89f339e27: Pull complete
3f0278ea12d5: Pull complete
11f168291684: Pull complete
0943aaa8f703: Pull complete
fd13cdf0383c: Pull complete
Digest: sha256:2efd606f46d102d3ac2341eae193a4da1f1d8af42a73f51ec066a7cb55d5e37d
Status: Downloaded newer image for yegor256/ruby:latest
docker.io/yegor256/ruby:latest
+ grep --quiet '\syegor256_erc20_110\s*$'
+ docker ps --filter=status=exited
+ ls -al .
total 48
drwx------ 3 ubuntu ubuntu 4096 Dec 18 14:43 .
drwxrwxrwt 12 root root 4096 Dec 18 14:43 ..
-rwxrwxr-x 1 ubuntu ubuntu 666 Dec 18 14:43 end.sh
-rwxrwxr-x 1 ubuntu ubuntu 498 Dec 18 14:43 entry.sh
-rw-rw-r-- 1 ubuntu ubuntu 5 Dec 18 14:43 pid
drwxrwxr-x 10 ubuntu ubuntu 4096 Dec 18 14:43 repo
-rw-rw-r-- 1 ubuntu ubuntu 81 Dec 18 14:43 rubygems.yml
-rwxrwxr-x 1 ubuntu ubuntu 6594 Dec 18 14:43 run.sh
-rw-rw-r-- 1 ubuntu ubuntu 688 Dec 18 14:43 script.sh
-rw-rw-r-- 1 ubuntu ubuntu 6267 Dec 18 14:44 stdout
++ pwd
++ pwd
+ docker run -t --rm -v /tmp/rultor-tPNx:/main --env=head=git@github.com:yegor256/erc20.git --env=tag=0.2.4 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/erc20.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=0.2.4'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''bundle install --no-color'\'' '\'';'\'' '\''[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1'\'' '\'';'\'' '\''DONCE_SUDO=true bundle exec rake'\'' '\'';'\'' '\''rm -rf *.gem'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/g" lib/erc20/erc20.rb'\'' '\'';'\'' '\''git add lib/erc20/erc20.rb'\'' '\'';'\'' '\''git commit -m "version set to ${tag}"'\'' '\'';'\'' '\''gem build erc20.gemspec'\'' '\'';'\'' '\''chmod 0600 ../rubygems.yml'\'' '\'';'\'' '\''gem push *.gem --config-file ../rubygems.yml'\'' '\'';'\'' )' --env=head_branch=master --env=author=yegor256 --hostname=docker --privileged --net=host --dns 8.8.8.8 --add-host docker:127.0.0.1 --memory=8g --memory-swap=16g --oom-kill-disable --cidfile=/tmp/rultor-tPNx/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=yegor256_erc20_110 yegor256/ruby /main/entry.sh
WARNING: Your kernel does not support OomKillDisable. OomKillDisable discarded.
+ set -e
+ set -o pipefail
+ shopt -s dotglob
+ useradd -m -G sudo r
++ awk -F : '$3 > 100 { print $1 }'
++ cat /etc/group
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G nogroup r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G ssh r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G docker r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G r r
+ usermod -s /bin/bash r
+ echo '%sudo ALL=(ALL) NOPASSWD:ALL'
+ cp -R /root/.bashrc /root/.cache /root/.gemrc /root/.profile /home/r
+ cp -R ./cid ./end.sh ./entry.sh ./pid ./repo ./rubygems.yml ./run.sh ./script.sh ./stdout /home/r
+ rm -rf repo
+ chown -R r:r /home/r
+ chmod a+x /home/r/script.sh
+ cat /home/r/script.sh
#!/usr/bin/env bash
set -e
set -o pipefail
if [ -e /home/r/.profile ]; then source /home/r/.profile; fi
shopt -s expand_aliases
alias 'sudo=sudo -i'
export HOME=/home/r
cd "${HOME}/repo"
export 'head=git@github.com:yegor256/erc20.git' ; export 'tag=0.2.4' ; export 'head_branch=master' ; export 'author=yegor256' ; pdd -f /dev/null ; bundle install --no-color ; [[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1 ; DONCE_SUDO=true bundle exec rake ; rm -rf *.gem ; sed -i "s/0\.0\.0/${tag}/g" lib/erc20/erc20.rb ; git add lib/erc20/erc20.rb ; git commit -m "version set to ${tag}" ; gem build erc20.gemspec ; chmod 0600 ../rubygems.yml ; gem push *.gem --config-file ../rubygems.yml ;
+ su --login r --command /home/r/script.sh
Found 7 lines in /home/r/repo/.pdd
My version is 0.23.1
Ruby version is 3.4.5 at x86_64-linux
Reading from root dir .
Excluding target/**/*
Excluding coverage/**/*
/usr/local/bundle/gems/pdd-0.23.1/lib/pdd/sources.rb:90: warning: undefining the allocator of T_DATA class FileMagic
/home/r/repo/hardhat/package.json is a binary file (106 bytes)
/home/r/repo/renovate.json is a binary file (107 bytes)
Reading .0pdd.yml ...
Reading .gitattributes ...
Reading .github/workflows/actionlint.yml ...
Reading .github/workflows/codecov.yml ...
Reading .github/workflows/copyrights.yml ...
Reading .github/workflows/hadolint.yml ...
Reading .github/workflows/markdown-lint.yml ...
Reading .github/workflows/pdd.yml ...
Reading .github/workflows/rake.yml ...
Reading .github/workflows/reuse.yml ...
Reading .github/workflows/shellcheck.yml ...
Reading .github/workflows/typos.yml ...
Reading .github/workflows/xcop.yml ...
Reading .github/workflows/yamllint.yml ...
Reading .gitignore ...
Reading .gitleaksignore ...
Reading .pdd ...
Reading .rubocop.yml ...
Reading .rultor.yml ...
Reading .yamllint.yml ...
Reading Gemfile ...
Reading Gemfile.lock ...
Reading LICENSE.txt ...
Reading LICENSES/MIT.txt ...
Reading README.md ...
Reading REUSE.toml ...
Reading Rakefile ...
Reading bin/erc20 ...
Reading erc20.gemspec ...
Reading features/cli.feature ...
Reading features/dry.feature ...
Reading features/gem_package.feature ...
Reading features/step_definitions/steps.rb ...
Reading features/support/env.rb ...
Reading hardhat/.gitignore ...
Reading hardhat/Dockerfile ...
Reading hardhat/contracts/Foo.sol ...
Reading hardhat/hardhat.config.js ...
Reading hardhat/ignition/modules/Foo.ts ...
Reading lib/erc20/erc20.rb ...
Reading lib/erc20/fake_wallet.rb ...
Reading lib/erc20/wallet.rb ...
Reading lib/erc20.rb ...
Reading test/erc20/test_fake_wallet.rb ...
Reading test/erc20/test_wallet.rb ...
Reading test/erc20/test_wallet_live.rb ...
Reading test/test__helper.rb ...
Bundler 2.6.9 is running, but your lockfile was generated with 2.5.16. Installing Bundler 2.5.16 and restarting using that version.
Fetching gem metadata from https://rubygems.org/.
Fetching bundler 2.5.16
Installing bundler 2.5.16
Fetching gem metadata from https://rubygems.org/........
Fetching rake 13.3.1
Installing rake 13.3.1
Fetching public_suffix 7.0.0
Installing public_suffix 7.0.0
Fetching addressable 2.8.8
Installing addressable 2.8.8
Fetching ansi 1.5.0
Installing ansi 1.5.0
Fetching ast 2.4.3
Installing ast 2.4.3
Fetching backtrace 0.4.1
Installing backtrace 0.4.1
Fetching base64 0.3.0
Installing base64 0.3.0
Fetching bigdecimal 4.0.1
Installing bigdecimal 4.0.1 with native extensions
Fetching builder 3.3.0
Installing builder 3.3.0
Fetching concurrent-ruby 1.3.6
Installing concurrent-ruby 1.3.6
Fetching rexml 3.4.4
Installing rexml 3.4.4
Fetching crack 1.0.1
Installing crack 1.0.1
Fetching cucumber-ci-environment 11.0.0
Installing cucumber-ci-environment 11.0.0
Fetching cucumber-messages 29.0.1
Installing cucumber-messages 29.0.1
Fetching cucumber-gherkin 36.1.0
Installing cucumber-gherkin 36.1.0
Fetching cucumber-tag-expressions 8.1.0
Installing cucumber-tag-expressions 8.1.0
Fetching cucumber-core 16.0.0
Installing cucumber-core 16.0.0
Fetching cucumber-cucumber-expressions 18.0.1
Installing cucumber-cucumber-expressions 18.0.1
Fetching cucumber-html-formatter 22.2.0
Installing cucumber-html-formatter 22.2.0
Fetching diff-lcs 1.6.2
Installing diff-lcs 1.6.2
Fetching logger 1.7.0
Installing logger 1.7.0
Fetching mini_mime 1.1.5
Installing mini_mime 1.1.5
Fetching multi_test 1.1.0
Installing multi_test 1.1.0
Fetching ffi 1.17.2 (x86_64-linux-gnu)
Installing ffi 1.17.2 (x86_64-linux-gnu)
Fetching memoist3 1.0.0
Installing memoist3 1.0.0
Fetching sys-uname 1.4.1
Installing sys-uname 1.4.1
Fetching cucumber 10.2.0
Installing cucumber 10.2.0
Fetching date 3.5.1
Installing date 3.5.1 with native extensions
Fetching docile 1.4.1
Installing docile 1.4.1
Fetching os 1.1.4
Installing os 1.1.4
Fetching loog 0.6.1
Installing loog 0.6.1
Fetching tago 0.6.0
Installing tago 0.6.0
Fetching elapsed 0.2.1
Installing elapsed 0.2.1
Fetching qbash 0.4.8
Installing qbash 0.4.8
Fetching donce 0.2.4
Installing donce 0.2.4
Fetching erb 6.0.1
Installing erb 6.0.1 with native extensions
Fetching forwardable 1.4.0
Installing forwardable 1.4.0
Fetching keccak 1.3.2
Installing keccak 1.3.2 with native extensions
Fetching konstructor 1.0.2
Installing konstructor 1.0.2
Fetching openssl 3.3.2
Installing openssl 3.3.2 with native extensions
Fetching mini_portile2 2.8.9
Installing mini_portile2 2.8.9
Fetching pkg-config 1.6.5
Installing pkg-config 1.6.5
Fetching rubyzip 2.4.1
Installing rubyzip 2.4.1
Fetching rbsecp256k1 6.0.0
Installing rbsecp256k1 6.0.0 with native extensions
Fetching ffi-compiler 1.3.2
Installing ffi-compiler 1.3.2
Fetching scrypt 3.1.0
Installing scrypt 3.1.0 with native extensions
Fetching eth 0.5.13
Installing eth 0.5.13
Fetching eventmachine 1.2.7
Installing eventmachine 1.2.7 with native extensions
Fetching websocket-extensions 0.1.5
Installing websocket-extensions 0.1.5
Fetching websocket-driver 0.8.0
Installing websocket-driver 0.8.0 with native extensions
Fetching faye-websocket 0.12.0
Installing faye-websocket 0.12.0
Fetching json 2.18.0
Installing json 2.18.0 with native extensions
Fetching uri 1.1.1
Installing uri 1.1.1
Fetching net-http 0.9.1
Installing net-http 0.9.1
Fetching faraday-net_http 3.4.2
Installing faraday-net_http 3.4.2
Fetching faraday 2.14.0
Installing faraday 2.14.0
Fetching multi_json 1.18.0
Installing multi_json 1.18.0
Fetching jsonrpc-client 0.1.4
Installing jsonrpc-client 0.1.4
Fetching ethon 0.15.0
Installing ethon 0.15.0
Fetching hashdiff 1.2.1
Installing hashdiff 1.2.1
Fetching language_server-protocol 3.17.0.5
Installing language_server-protocol 3.17.0.5
Fetching lint_roller 1.1.0
Installing lint_roller 1.1.0
Fetching prism 1.6.0
Installing prism 1.6.0 with native extensions
Fetching minitest 6.0.0
Installing minitest 6.0.0
Fetching ruby-progressbar 1.13.0
Installing ruby-progressbar 1.13.0
Fetching minitest-reporters 1.7.1
Installing minitest-reporters 1.7.1
Fetching minitest-retry 0.2.5
Installing minitest-retry 0.2.5
Fetching parallel 1.27.0
Installing parallel 1.27.0
Fetching parser 3.3.10.0
Installing parser 3.3.10.0
Fetching stringio 3.2.0
Installing stringio 3.2.0 with native extensions
Fetching psych 5.3.1
Installing psych 5.3.1 with native extensions
Fetching random-port 0.7.6
Installing random-port 0.7.6
Fetching tsort 0.2.0
Installing tsort 0.2.0
Fetching rdoc 6.17.0
Installing rdoc 6.17.0
Fetching regexp_parser 2.11.3
Installing regexp_parser 2.11.3
Fetching rubocop-ast 1.48.0
Installing rubocop-ast 1.48.0
Fetching unicode-emoji 4.2.0
Installing unicode-emoji 4.2.0
Fetching unicode-display_width 3.2.0
Installing unicode-display_width 3.2.0
Fetching rubocop 1.82.0
Installing rubocop 1.82.0
Fetching rubocop-minitest 0.38.2
Installing rubocop-minitest 0.38.2
Fetching rubocop-performance 1.26.1
Installing rubocop-performance 1.26.1
Fetching rubocop-rake 0.7.1
Installing rubocop-rake 0.7.1
Fetching simplecov-html 0.13.2
Installing simplecov-html 0.13.2
Fetching simplecov_json_formatter 0.1.4
Installing simplecov_json_formatter 0.1.4
Fetching simplecov 0.22.0
Installing simplecov 0.22.0
Fetching simplecov-cobertura 3.1.0
Installing simplecov-cobertura 3.1.0
Fetching threads 0.5.0
Installing threads 0.5.0
Fetching typhoeus 1.5.0
Installing typhoeus 1.5.0
Fetching webmock 3.26.1
Installing webmock 3.26.1
Fetching yard 0.9.38
Installing yard 0.9.38
Bundle complete! 24 Gemfile dependencies, 95 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
Post-install message from rubyzip:
RubyZip 3.0 is coming!
**********************
The public API of some Rubyzip classes has been modernized to use named
parameters for optional arguments. Please check your usage of the
following classes:
* `Zip::File`
* `Zip::Entry`
* `Zip::InputStream`
* `Zip::OutputStream`
* `Zip::DOSTime`
Run your test suite with the `RUBYZIP_V3_API_WARN` environment
variable set to see warnings about usage of the old API. This will
help you to identify any changes that you need to make to your code.
See https://github.com/rubyzip/rubyzip/wiki/Updating-to-version-3.x for
more information.
Please ensure that your Gemfiles and .gemspecs are suitably restrictive
to avoid an unexpected breakage when 3.0 is released (e.g. ~> 2.3.0).
See https://github.com/rubyzip/rubyzip for details. The Changelog also
lists other enhancements and bugfixes that have been implemented since
version 2.3.0.
1 installed gem you directly depend on is looking for funding.
Run `bundle fund` for details
/usr/local/bundle/gems/bundler-2.5.16/lib/bundler/rubygems_ext.rb:250: warning: method redefined; discarding old encode_with
/usr/local/lib/ruby/3.4.0/rubygems/dependency.rb:341: warning: previous definition of encode_with was here
/usr/local/bundle/gems/eth-0.5.13/lib/eth/abi/encoder.rb:52: warning: assigned but unused variable - nested_sub_size
/usr/local/bundle/gems/eth-0.5.13/lib/eth/address.rb:91: warning: ambiguous `/`; wrap regexp in parentheses or add a space after `/` operator
/usr/local/bundle/gems/eth-0.5.13/lib/eth/address.rb:96: warning: ambiguous `/`; wrap regexp in parentheses or add a space after `/` operator
/usr/local/bundle/gems/eth-0.5.13/lib/eth/address.rb:101: warning: ambiguous `/`; wrap regexp in parentheses or add a space after `/` operator
/usr/local/bundle/gems/eth-0.5.13/lib/eth/contract/function_input.rb:34: warning: method redefined; discarding old type
/usr/local/bundle/gems/eth-0.5.13/lib/eth/contract/function_output.rb:33: warning: method redefined; discarding old type
/usr/local/bundle/gems/eth-0.5.13/lib/eth/client.rb:74: warning: method redefined; discarding old default_account
/usr/local/bundle/gems/eth-0.5.13/lib/eth/client.rb:82: warning: method redefined; discarding old chain_id
/usr/local/bundle/gems/eth-0.5.13/lib/eth/eip712.rb:50: warning: assigned but unused variable - dependency
/usr/local/bundle/gems/eth-0.5.13/lib/eth/rlp/encoder.rb:36: warning: assigned but unused variable - result
/usr/local/bundle/gems/eth-0.5.13/lib/eth/util.rb:53: warning: assigned but unused variable - hex
/usr/local/bundle/gems/eth-0.5.13/lib/eth/util.rb:67: warning: assigned but unused variable - bin
/usr/local/bundle/gems/eth-0.5.13/lib/eth/util.rb:103: warning: ambiguous `/`; wrap regexp in parentheses or add a space after `/` operator
/usr/local/bundle/gems/eth-0.5.13/lib/eth/util.rb:111: warning: ambiguous `/`; wrap regexp in parentheses or add a space after `/` operator
Run options: --seed 1901
# Running:
TestWallet
Talked to example.org:443 in 2ms
The balance of 0xd5fF1bFCDE7A03Da61ad229d962c74F1eA2f16A5 is 2039583 ERC20 tokens
.TestWallet
STestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
.TestWallet
STestWallet
.TestWallet
.TestWallet
.TestWallet
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
E: RuntimeError: intentional
/home/r/repo/test/erc20/test_wallet.rb:256:in 'block (3 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
/home/r/repo/lib/erc20/wallet.rb:450:in 'block (3 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:481:in 'ERC20::Wallet#verbose'
/home/r/repo/lib/erc20/wallet.rb:420:in 'block (2 levels) in ERC20::Wallet#reaccept'
/home/r/repo/lib/erc20/wallet.rb:488:in 'ERC20::Wallet#safe'
/home/r/repo/lib/erc20/wallet.rb:419:in 'block in ERC20::Wallet#reaccept'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api/event_target.rb:44:in 'Faye::WebSocket::API::EventTarget#dispatch_event'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:127:in 'Faye::WebSocket::API#receive_message'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:47:in 'block in Faye::WebSocket::API#initialize'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:39:in 'block in WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'Array#each'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/event_emitter.rb:38:in 'WebSocket::Driver::EventEmitter#emit'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:416:in 'WebSocket::Driver::Hybi#emit_message'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:394:in 'WebSocket::Driver::Hybi#emit_frame'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/hybi.rb:120:in 'WebSocket::Driver::Hybi#parse'
/usr/local/bundle/gems/websocket-driver-0.8.0/lib/websocket/driver/client.rb:62:in 'WebSocket::Driver::Client#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/api.rb:171:in 'Faye::WebSocket::API#parse'
/usr/local/bundle/gems/faye-websocket-0.12.0/lib/faye/websocket/client.rb:108:in 'Faye::WebSocket::Client::Connection#receive_data'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run_machine'
/usr/local/bundle/gems/eventmachine-1.2.7/lib/eventmachine.rb:195:in 'EventMachine.run'
/home/r/repo/lib/erc20/wallet.rb:364:in 'ERC20::Wallet#accept'
/home/r/repo/test/erc20/test_wallet.rb:254:in 'block (2 levels) in TestWallet#test_accepts_payments_with_failures_on_hardhat'
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestFakeWallet
.TestWalletLive
STestWalletLive
STestWalletLive
.TestWalletLive
STestWalletLive
STestWalletLive
STestWalletLive
STestWalletLive
STestWalletLive
STestWalletLive
S
Finished in 386.565105s, 0.1009 runs/s, 0.1630 assertions/s.
39 runs, 63 assertions, 0 failures, 0 errors, 11 skips
You have skipped tests. Run with --verbose for details.
Coverage report generated for test to /home/r/repo/coverage.
Line Coverage: 97.03% (294 / 303)
Coverage report generated for test to /home/r/repo/coverage/coverage.xml.
Line Coverage: 97.03% (294 / 303)
/usr/local/bin/ruby -S bundle exec cucumber
90m# SPDX-FileCopyrightText: Copyright (c) 2025 Yegor Bugayenko0m
90m# SPDX-License-Identifier: MIT0m
Feature: Command Line Processing
As a simple ETH/ERC20 user I want to send payments
Scenario: Help can be printed 90m# features/cli.feature:70m
32mWhen I run bin/erc20 with "32m1m--help0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
32mAnd Stdout contains "32m1m--help0m0m32m"90m # features/step_definitions/steps.rb:380m0m
Scenario: Gas price price can be retrieved 90m# features/cli.feature:120m
32mWhen I run bin/erc20 with "32m1mprice --attempts=40m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ETH private key can be generated 90m# features/cli.feature:160m
32mWhen I run bin/erc20 with "32m1mkey0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ETH address can be created 90m# features/cli.feature:200m
32mWhen I run bin/erc20 with "32m1maddress 46feba063e9b59a8ae0dba68abd39a3cb8f52089e776576d6eb1bb5bfec123d10m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ERC20 balance can be checked 90m# features/cli.feature:240m
32mWhen I run bin/erc20 with "32m1mbalance 0x7232148927F8a580053792f44D4d59d40Fd00ABD --verbose0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ETH balance can be checked 90m# features/cli.feature:280m
32mWhen I run bin/erc20 with "32m1meth_balance 0x7232148927F8a580053792f44D4d59d40Fd00ABD --verbose0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Feature: Command Line Processing, in Dry Mode
As a simple ETH/ERC20 user I want to test it in dry mode
Scenario: Gas price price can be retrieved 90m# features/dry.feature:70m
32mWhen I run bin/erc20 with "32m1mprice --attempts=4 --dry0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ERC20 balance can be checked 90m# features/dry.feature:110m
32mWhen I run bin/erc20 with "32m1mbalance 0x7232148927F8a580053792f44D4d59d40Fd00ABD --verbose --dry0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ETH balance can be checked 90m# features/dry.feature:150m
32mWhen I run bin/erc20 with "32m1meth_balance 0x7232148927F8a580053792f44D4d59d40Fd00ABD --verbose --dry0m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Scenario: ERC20 payment can be sent 90m# features/dry.feature:190m
32mWhen I run bin/erc20 with "32m1mpay --dry --verbose 46feba063e9b59a8ae0dba68abd39a3cb8f52089e776576d6eb1bb5bfec123d1 0x7232148927F8a580053792f44D4d59d40Fd00ABD $100m0m32m"90m # features/step_definitions/steps.rb:320m0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
Feature: Gem Package
As a source code writer I want to be able to
package the Gem into .gem file
Scenario: Gem can be packaged 90m# features/gem_package.feature:80m
32mGiven It is Unix90m # features/step_definitions/steps.rb:660m0m
32mGiven I have a "32m1mexecs.rb0m0m32m" file with content:90m # features/step_definitions/steps.rb:270m0m
32m """0m
32m #!/usr/bin/env ruby0m
32m require 'rubygems'0m
32m spec = Gem::Specification::load('./spec.rb')0m
32m if spec.executables.empty?0m
32m fail 'no executables: ' + File.read('./spec.rb')0m
32m end0m
32m """0m
/tmp/test20251218-7109-p74u1x/erc20/lib/erc20/erc20.rb:28: warning: already initialized constant ERC20::VERSION
/home/r/repo/lib/erc20/erc20.rb:28: warning: previous definition of VERSION was here
32mWhen I run bash with:90m # features/step_definitions/steps.rb:600m0m
32m """0m
32m cd erc200m
32m gem build erc20.gemspec0m
32m gem specification --ruby erc20-*.gem > ../spec.rb0m
32m cd ..0m
32m ruby execs.rb0m
32m """0m
32mThen Exit code is zero90m # features/step_definitions/steps.rb:460m0m
11 scenarios (32m11 passed0m)
25 steps (32m25 passed0m)
0m12.690s
1m32m┌──────────────────────────────────────────────────────────────────────────────┐0m0m
1m32m│0m0m Share your Cucumber Report with your team at 4m1m36mhttps://reports.cucumber.io0m0m0m 1m32m│0m0m
1m32m│0m0m 1m32m│0m0m
1m32m│0m0m Command line option: 36m--publish0m 1m32m│0m0m
1m32m│0m0m Environment variable: 36mCUCUMBER_PUBLISH_ENABLED0m=36mtrue0m 1m32m│0m0m
1m32m│0m0m cucumber.yml: 36mdefault: --publish0m 1m32m│0m0m
1m32m│0m0m 1m32m│0m0m
1m32m│0m0m More information at 4m1m36mhttps://cucumber.io/docs/cucumber/environment-variables/0m0m0m 1m32m│0m0m
1m32m│0m0m 1m32m│0m0m
1m32m│0m0m To disable this message, specify 1mCUCUMBER_PUBLISH_QUIET=true0m or use the 1m32m│0m0m
1m32m│0m0m 1m--publish-quiet0m option. You can also add this to your 1mcucumber.yml:0m 1m32m│0m0m
1m32m│0m0m 1mdefault: --publish-quiet0m 1m32m│0m0m
1m32m└──────────────────────────────────────────────────────────────────────────────┘0m0m
Running RuboCop...
Inspecting 13 files
32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m
13 files inspected, 32mno offenses0m detected
?25h2KFiles:neratingrdo3/ERC20/FakeWallet.html...0ml0ml0m
Modules: 1 ( 0 undocumented)
Classes: 2 ( 0 undocumented)
Constants: 3 ( 0 undocumented)
Attributes: 8 ( 0 undocumented)
Methods: 20 ( 0 undocumented)
100.00% documented
[__rultor 066107e] version set to 0.2.4
1 file changed, 1 insertion(+), 1 deletion(-)
Successfully built RubyGem
Name: erc20
Version: 0.2.4
File: erc20-0.2.4.gem
Pushing gem to https://rubygems.org...
Successfully registered gem: erc20 (0.2.4)
+ mv /home/r/repo .
++ whoami
+ chown -R root repo
+ '[' -n '' ']'
++ whoami
+ sudo chown -R ubuntu repo
+ cd repo
+ git checkout __rultor
Already on '__rultor'
+ git tag 0.2.4 -m '0.2.4: tagged by rultor.com'
+ git reset --hard
HEAD is now at 066107e version set to 0.2.4
+ git clean -fd
+ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
+ git branch -D __rultor
Deleted branch __rultor (was 066107e).
+ git push --all origin
Everything up-to-date
+ git push --tags origin
To github.com:yegor256/erc20.git
* [new tag] 0.2.4 -> 0.2.4
container bf5ed68f34886a66974c25650e63c3549d0bc5a512bd6050fb08379c07e50ba5 is dead
Thu Dec 18 14:54:18 UTC 2025