rultor.com logo This build log was produced by rultor.com for yegor256/zache#297
++ dirname ./run.sh
+ cd .
+ echo 2191
+ echo '2.0-SNAPSHOT BUILD'
2.0-SNAPSHOT BUILD
+ date
Tue Nov 10 03:01:15 UTC 2026
+ uptime
 03:01:15 up 19 min,  0 users,  load average: 0.07, 0.02, 0.00
+ ff=default
+ image=yegor256/ruby
+ rebase=false
+ head_branch=master
+ pull_title='chore(deps): update crate-ci/typos action to v1.52.1'
+ author=yegor256
+ directory=
+ head=git@github.com:yegor256/zache.git
+ pull_id=297
+ fork=git@github.com:yegor256/zache.git
+ fork_branch=renovate/crate-ci-typos-1.x
+ squash=false
+ vars=('--env=head=git@github.com:yegor256/zache.git' '--env=pull_id=297' '--env=fork=git@github.com:yegor256/zache.git' '--env=fork_branch=renovate/crate-ci-typos-1.x' '--env=head_branch=master' '--env=pull_title=chore(deps): update crate-ci/typos action to v1.52.1' '--env=author=yegor256' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/zache.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=297'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:yegor256/zache.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=renovate/crate-ci-typos-1.x'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=chore(deps): update crate-ci/typos action to v1.52.1'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"'\'' '\'';'\'' '\''bundle exec rake clean test rubocop'\'' '\'';'\'' )')
+ scripts=('export '\''head=git@github.com:yegor256/zache.git'\''' ';' 'export '\''pull_id=297'\''' ';' 'export '\''fork=git@github.com:yegor256/zache.git'\''' ';' 'export '\''fork_branch=renovate/crate-ci-typos-1.x'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=chore(deps): update crate-ci/typos action to v1.52.1'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"' ';' 'bundle exec rake clean test rubocop' ';')
+ container=yegor256_zache_297
+ as_root=false
+ set -e -o pipefail
+ hostname
ip-172-31-18-134
+ pwd
/tmp/rultor-6kuT
+ 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/zache.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/zache.git'\''' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''head=git@github.com:yegor256/zache.git'\''' ';' 'export '\''pull_id=297'\''' ';' 'export '\''fork=git@github.com:yegor256/zache.git'\''' ';' 'export '\''fork_branch=renovate/crate-ci-typos-1.x'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=chore(deps): update crate-ci/typos action to v1.52.1'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"' ';' 'bundle exec rake clean test rubocop' ';'
+ sensitive=()
+ set -ex -o pipefail
+ cd repo
+ git remote add fork git@github.com:yegor256/zache.git
+ git remote update
Fetching origin
Fetching fork
From github.com:yegor256/zache
 * [new branch]      maintenance-coverage-upgrade -> fork/maintenance-coverage-upgrade
 * [new branch]      maintenance-gem-package -> fork/maintenance-gem-package
 * [new branch]      master                  -> fork/master
 * [new branch]      renovate-automerge      -> fork/renovate-automerge
 * [new branch]      renovate/crate-ci-typos-1.x -> fork/renovate/crate-ci-typos-1.x
 * [new branch]      update-dependencies     -> fork/update-dependencies
+ args=()
+ '[' default == default ']'
+ args+=(--ff)
+ '[' default == no ']'
+ '[' default == only ']'
+ '[' false == true ']'
+ BRANCH=__rultor
++ wc -l
++ git show-branch __rultor
+ '[' 0 -gt 0 ']'
+ export BRANCH
+ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
+ git checkout -B __rultor fork/renovate/crate-ci-typos-1.x
Switched to a new branch '__rultor'
Branch '__rultor' set up to track remote branch 'renovate/crate-ci-typos-1.x' from 'fork'.
+ git checkout -B master origin/master
Switched to and reset branch 'master'
Branch 'master' set up to track remote branch 'master' from 'origin'.
Your branch is up to date with 'origin/master'.
+ '[' false == true ']'
+ KEY=3FD3FA7E9AF0FA4C
+ git merge --gpg-sign=3FD3FA7E9AF0FA4C --no-edit -m 'chore(deps): update crate-ci/typos action to v1.52.1' --ff __rultor
Updating 65222fb..bcaac00
Fast-forward (no commit created; -m option ignored)
 .github/workflows/typos.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
+ git log -1 --show-signature
commit bcaac00840299be9097b733e1bf10f5b64dfdaec
gpg: Signature made Tue Nov 10 00:48:35 2026 UTC
gpg:                using RSA key B5690EEEBB952194
gpg: Can't check signature: No public key
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Tue Nov 10 00:48:35 2026 +0000

    chore(deps): update crate-ci/typos action to v1.52.1
+ docker_when_possible
+ true
++ tail -n 1
++ sed 's/ /\n/g'
++ uptime
+ load=0.02
++ bc
++ echo 0.02 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 0.02, low enough to run a new Docker container'
load average is 0.02, 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
cb259a83ac3d: Pulling fs layer
4f4fb700ef54: Pulling fs layer
50778be6ae7c: Pulling fs layer
de39015cb2a0: Pulling fs layer
c5d1f12c356a: Pulling fs layer
e9b75b04736a: Pulling fs layer
74aacb7acb4e: Pulling fs layer
b343964c14ed: Pulling fs layer
2da5d65999c3: Pulling fs layer
de39015cb2a0: Waiting
c5d1f12c356a: Waiting
e9b75b04736a: Waiting
74aacb7acb4e: Waiting
b343964c14ed: Waiting
2da5d65999c3: Waiting
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
50778be6ae7c: Verifying Checksum
50778be6ae7c: Download complete
cb259a83ac3d: Verifying Checksum
cb259a83ac3d: Download complete
e9b75b04736a: Verifying Checksum
e9b75b04736a: Download complete
74aacb7acb4e: Verifying Checksum
74aacb7acb4e: Download complete
c5d1f12c356a: Verifying Checksum
c5d1f12c356a: Download complete
b343964c14ed: Verifying Checksum
b343964c14ed: Download complete
2da5d65999c3: Verifying Checksum
2da5d65999c3: Download complete
de39015cb2a0: Verifying Checksum
de39015cb2a0: Download complete
cb259a83ac3d: Pull complete
4f4fb700ef54: Pull complete
50778be6ae7c: Pull complete
de39015cb2a0: Pull complete
c5d1f12c356a: Pull complete
e9b75b04736a: Pull complete
74aacb7acb4e: Pull complete
b343964c14ed: Pull complete
2da5d65999c3: Pull complete
Digest: sha256:1e3d8ad5ebf9fd2b323717b6b1213e233d033d7dec9eaac9d19bf72b6e5caaf7
Status: Downloaded newer image for yegor256/ruby:latest
docker.io/yegor256/ruby:latest
+ docker ps --filter=status=exited
+ grep --quiet '\syegor256_zache_297\s*$'
+ ls -al .
total 48
drwx------  3 ubuntu ubuntu 4096 Nov 10 03:01 .
drwxrwxrwt 12 root   root   4096 Nov 10 03:01 ..
-rwxrwxr-x  1 ubuntu ubuntu  666 Nov 10 03:01 end.sh
-rwxrwxr-x  1 ubuntu ubuntu  498 Nov 10 03:01 entry.sh
-rw-rw-r--  1 ubuntu ubuntu    5 Nov 10 03:01 pid
drwxrwxr-x  7 ubuntu ubuntu 4096 Nov 10 03:01 repo
-rw-rw-r--  1 ubuntu ubuntu   81 Nov 10 03:01 rubygems.yml
-rwxrwxr-x  1 ubuntu ubuntu 6638 Nov 10 03:01 run.sh
-rw-rw-r--  1 ubuntu ubuntu  610 Nov 10 03:01 script.sh
-rw-rw-r--  1 ubuntu ubuntu 7326 Nov 10 03:01 stdout
++ pwd
++ pwd
+ docker run -t --rm -v /tmp/rultor-6kuT:/main --env=head=git@github.com:yegor256/zache.git --env=pull_id=297 --env=fork=git@github.com:yegor256/zache.git --env=fork_branch=renovate/crate-ci-typos-1.x --env=head_branch=master '--env=pull_title=chore(deps): update crate-ci/typos action to v1.52.1' --env=author=yegor256 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/zache.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=297'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:yegor256/zache.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=renovate/crate-ci-typos-1.x'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=chore(deps): update crate-ci/typos action to v1.52.1'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"'\'' '\'';'\'' '\''bundle exec rake clean test rubocop'\'' '\'';'\'' )' --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-6kuT/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=yegor256_zache_297 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 ubuntu r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G systemd-journal r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G systemd-network r
+ for g in $(cat /etc/group | awk -F ':' '$3 > 100 { print $1 }')
+ usermod -a -G messagebus 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 polkitd 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 /root/.ssh /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/zache.git' ; export 'pull_id=297' ; export 'fork=git@github.com:yegor256/zache.git' ; export 'fork_branch=renovate/crate-ci-typos-1.x' ; export 'head_branch=master' ; export 'pull_title=chore(deps): update crate-ci/typos action to v1.52.1' ; export 'author=yegor256' ; pdd -f /dev/null ; sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile" ; bundle exec rake clean test rubocop ;
+ su --login r --command /home/r/script.sh
Found 5 lines in /home/r/repo/.pdd
My version is 0.23.1
Ruby version is 3.4.9 at x86_64-linux
Reading from root dir .
/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/logo.svg is a binary file (3827 bytes)
/home/r/repo/renovate.json is a binary file (158 bytes)
Reading .0pdd.yml ...
Reading .gitattributes ...
Reading .github/workflows/actionlint.yml ...
Reading .github/workflows/codecov.yml ...
Reading .github/workflows/copyrights.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/typos.yml ...
Reading .github/workflows/xcop.yml ...
Reading .github/workflows/yamllint.yml ...
Reading .gitignore ...
Reading .pdd ...
Reading .rubocop.yml ...
Reading .rultor.yml ...
Reading Gemfile ...
Reading Gemfile.lock ...
Reading LICENSE.txt ...
Reading LICENSES/MIT.txt ...
Reading README.md ...
Reading REUSE.toml ...
Reading Rakefile ...
Reading lib/zache.rb ...
Reading test/test__helper.rb ...
Reading test/test_zache.rb ...
Reading zache.gemspec ...
Don't run Bundler as root. Installing your bundle as root will break this
application for all non-root users on this machine.
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
Don't run Bundler as root. Installing your bundle as root will break this
application for all non-root users on this machine.
Fetching gem metadata from https://rubygems.org/........
Fetching rake 13.4.2
Installing rake 13.4.2
Fetching ansi 1.6.0
Installing ansi 1.6.0
Fetching ast 2.4.3
Installing ast 2.4.3
Fetching backtrace 0.4.1
Installing backtrace 0.4.1
Fetching builder 3.3.0
Installing builder 3.3.0
Fetching concurrent-ruby 1.3.8
Installing concurrent-ruby 1.3.8
Fetching drb 2.2.3
Installing drb 2.2.3
Fetching ellipsized 0.3.0
Installing ellipsized 0.3.0
Fetching logger 1.7.0
Installing logger 1.7.0
Fetching loog 0.8.0
Installing loog 0.8.0
Fetching tago 0.7.0
Installing tago 0.7.0
Fetching elapsed 0.3.1
Installing elapsed 0.3.1
Fetching erb 6.0.7
Installing erb 6.0.7 with native extensions
Fetching json 2.21.2
Installing json 2.21.2 with native extensions
Fetching language_server-protocol 3.17.0.6
Installing language_server-protocol 3.17.0.6
Fetching lint_roller 1.1.0
Installing lint_roller 1.1.0
Fetching prism 1.9.0
Installing prism 1.9.0 with native extensions
Fetching minitest 6.1.0
Installing minitest 6.1.0
Fetching ruby-progressbar 1.13.0
Installing ruby-progressbar 1.13.0
Fetching minitest-reporters 1.8.0
Installing minitest-reporters 1.8.0
Fetching os 1.1.4
Installing os 1.1.4
Fetching parallel 2.3.0
Installing parallel 2.3.0
Fetching parser 3.3.13.0
Installing parser 3.3.13.0
Fetching qbash 0.8.4
Installing qbash 0.8.4
Fetching tsort 0.2.0
Installing tsort 0.2.0
Fetching rbs 4.2.0
Installing rbs 4.2.0 with native extensions
Fetching rdoc 8.1.0
Installing rdoc 8.1.0
Fetching regexp_parser 2.13.1
Installing regexp_parser 2.13.1
Fetching rubocop-ast 1.50.0
Installing rubocop-ast 1.50.0
Fetching unicode-emoji 4.3.0
Installing unicode-emoji 4.3.0
Fetching unicode-display_width 3.3.0
Installing unicode-display_width 3.3.0
Fetching rubocop 1.92.2
Installing rubocop 1.92.2
Fetching rubocop-elegant 0.8.0
Installing rubocop-elegant 0.8.0
Fetching rubocop-minitest 0.41.0
Installing rubocop-minitest 0.41.0
Fetching rubocop-performance 1.27.0
Installing rubocop-performance 1.27.0
Fetching rubocop-rake 0.7.1
Installing rubocop-rake 0.7.1
Fetching simplecov 1.3.2
Installing simplecov 1.3.2
Fetching simplecov-cobertura 4.0.0
Installing simplecov-cobertura 4.0.0
Fetching threads 0.5.0
Installing threads 0.5.0
Fetching yard 0.9.45
Installing yard 0.9.45
Bundle complete! 17 Gemfile dependencies, 45 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
/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
/home/r/repo/test/test__helper.rb:19:in '<top (required)>': [DEPRECATION] `SimpleCov.minimum_coverage_by_file` is deprecated. Replace it with:
  coverage(:line) { minimum 90, per: :file }
/home/r/repo/test/test__helper.rb:21:in 'block in <top (required)>': [DEPRECATION] `SimpleCov.add_filter` is deprecated. Replace with `SimpleCov.skip` (same arguments, same behavior). Example: `SimpleCov.skip "test/"`.
/home/r/repo/test/test__helper.rb:22:in 'block in <top (required)>': [DEPRECATION] `SimpleCov.add_filter` is deprecated. Replace with `SimpleCov.skip` (same arguments, same behavior). Example: `SimpleCov.skip &quot;vendor/&quot;`.
/home/r/repo/test/test__helper.rb:23:in 'block in <top (required)>': [DEPRECATION] `SimpleCov.add_filter` is deprecated. Replace with `SimpleCov.skip` (same arguments, same behavior). Example: `SimpleCov.skip "target/"`.
/home/r/repo/test/test__helper.rb:24:in 'block in <top (required)>': [DEPRECATION] `SimpleCov.track_files` is deprecated. Replace with `SimpleCov.cover "lib/**/*.rb"` — `cover` includes unloaded files on disk (the historical `track_files` behavior) and also restricts the report to the matching set. If you want to keep additional files outside "lib/**/*.rb" in the report, pass every directory you care about, e.g. `cover "lib/**/*.rb", "app/**/*.rb"`.
/home/r/repo/test/test__helper.rb:25:in 'block in <top (required)>': [DEPRECATION] `SimpleCov.track_files` is deprecated. Replace with `SimpleCov.cover "*.rb"` — `cover` includes unloaded files on disk (the historical `track_files` behavior) and also restricts the report to the matching set. If you want to keep additional files outside "*.rb" in the report, pass every directory you care about, e.g. `cover "*.rb", "app/**/*.rb"`.
Started with run options --seed 57713

ZacheTest
  test_remove_all_concurrent_with_get                            32m PASS0m (0.11s)
  test_fetches_multiple_keys_in_many_threads_in_dirty_mode       32m PASS0m (0.02s)
  test_calculates_age                                            32m PASS0m (0.10s)
  test_no_method_error_on_concurrent_remove_all                  32m PASS0m (0.07s)
  test_rethrows                                                  32m PASS0m (0.00s)
  test_sync_zache_is_reentrant_for_different_keys                32m PASS0m (0.00s)
  test_sync_zache_is_not_reentrant                               32m PASS0m (0.00s)
  test_locks_cleaned_up_after_remove                             32m PASS0m (0.00s)
  test_key_exists                                                32m PASS0m (0.00s)
  test_missing_key_is_not_locked                                 32m PASS0m (0.00s)
  test_calculates_only_once                                      32m PASS0m (0.50s)
  test_check_and_remove                                          32m PASS0m (0.00s)
  test_synchronize_one_returns_working_mutex                     32m PASS0m (0.00s)
  test_remove_by_block                                           32m PASS0m (0.00s)
  test_locks_cleaned_up_after_clean                              32m PASS0m (0.10s)
#<Thread:0x00007f290e410bc0 /home/r/repo/lib/zache.rb:312 run> terminated with exception (report_on_exception is true):
/home/r/repo/test/test_zache.rb:534:in 'block in ZacheTest#test_eager_mode_with_error_in_block': 1mIntentional error in eager block (1;4mStandardErrorm1m)m
        from /home/r/repo/lib/zache.rb:354:in 'Zache#calc'
        from /home/r/repo/lib/zache.rb:313:in 'block (2 levels) in Zache#spawn'
        from /home/r/repo/lib/zache.rb:385:in 'Thread::Mutex#synchronize'
        from /home/r/repo/lib/zache.rb:385:in 'Zache#lock'
        from /home/r/repo/lib/zache.rb:313:in 'block in Zache#spawn'
  test_eager_mode_with_error_in_block                            32m PASS0m (0.20s)
  test_remove_key_with_sync_false                                32m PASS0m (0.00s)
  test_caches_and_expires                                        32m PASS0m (0.10s)
  test_remove_all_without_sync                                   32m PASS0m (0.00s)
  test_remove_absent_key                                         32m PASS0m (0.00s)
  test_checks_locked_status_from_inside                          32m PASS0m (0.00s)
  test_returns_dirty_result                                      32m PASS0m (0.10s)
  test_eager_keeps_racing_put                                    32m PASS0m (0.20s)
  test_locks_cleaned_up_after_remove_all                         32m PASS0m (0.01s)
  test_eager_race_returns_placeholder                            32m PASS0m (0.00s)
  test_locks_cleaned_up_after_remove_by                          32m PASS0m (0.00s)
  test_clean_with_threads                                        32m PASS0m (1.10s)
  test_returns_placeholder_in_eager_mode                         32m PASS0m (0.20s)
  test_fetches_multiple_keys_in_many_threads                     32m PASS0m (0.01s)
  test_unsynced_calc_keeps_its_result                            32m PASS0m (0.00s)
  test_caches_with_nil_lifetime                                  32m PASS0m (0.00s)
  test_caches_in_threads                                         32m PASS0m (0.00s)
  test_remove_returns_value_or_fallback                          32m PASS0m (0.00s)
  test_returns_dirty_result_when_not_locked                      32m PASS0m (0.00s)
  test_put_returns_the_caller_value                              32m PASS0m (0.00s)
  test_puts_something_in                                         32m PASS0m (0.00s)
  test_concurrent_reads_are_thread_safe                          32m PASS0m (0.02s)
  test_put_and_exists                                            32m PASS0m (0.20s)
  test_remove_all_with_sync                                      32m PASS0m (0.00s)
  test_caches                                                    32m PASS0m (0.00s)
  test_clean_size                                                32m PASS0m (0.10s)
  test_returns_placeholder_and_releases_lock                     32m PASS0m (0.10s)
  test_fake_class_works                                          32m PASS0m (0.00s)
  test_fake_does_not_report_stored_keys                          32m PASS0m (0.00s)
  test_eager_keeps_racing_calculation                            32m PASS0m (0.20s)
  test_remove_key                                                32m PASS0m (0.00s)
  test_clean                                                     32m PASS0m (0.10s)
  test_reentrant_remove_keeps_outer_lock                         32m PASS0m (0.00s)
  test_eager_refreshes_expired_value                             32m PASS0m (0.00s)
  test_clean_with_sync_false                                     32m PASS0m (0.10s)
  test_dirty_mode_nil_safety                                     32m PASS0m (0.15s)
  test_remove_all_with_threads                                   32m PASS0m (0.00s)
  test_concurrent_reads_with_writes                              32m PASS0m (0.01s)

Finished in 3.85769s
53 tests, 216 assertions, 32m0 failures, 0 errors, 0m33m0 skips0m
Coverage report generated for test to coverage/index.html
Line coverage: 125 / 129 (32m96.89%0m)
Coverage report generated for test to /home/r/repo/coverage/coverage.xml.
Line Coverage: 96.9% (125 / 129)
Running RuboCop...
Inspecting 6 files
32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m

6 files inspected, 32mno offenses0m detected
+ mv /home/r/repo .
++ whoami
+ chown -R root repo
+ '[' -n '' ']'
++ whoami
+ sudo chown -R ubuntu repo
+ cd repo
+ git push origin master
To github.com:yegor256/zache.git
   65222fb..bcaac00  master -> master
container 5327bc3b93a2d617d290ec0659178b2acebd0fa5514d18900c9c109a3bfceffa is dead
Tue Nov 10 03:52:49 UTC 2026