++ dirname ./run.sh
+ cd .
+ echo 1269
+ echo '2.0-SNAPSHOT BUILD'
2.0-SNAPSHOT BUILD
+ date
Sun Oct 11 16:43:07 UTC 2026
+ uptime
16:43:07 up 1 min, 0 users, load average: 0.99, 0.33, 0.12
+ ff=default
+ image=yegor256/ruby
+ rebase=false
+ head_branch=master
+ pull_title='Update dependency rubocop-minitest to v0.41.0'
+ author=yegor256
+ directory=
+ head=git@github.com:yegor256/hoc.git
+ pull_id=109
+ fork=git@github.com:yegor256/hoc.git
+ fork_branch=renovate/rubocop-minitest-0.x-lockfile
+ squash=false
+ vars=('--env=head=git@github.com:yegor256/hoc.git' '--env=pull_id=109' '--env=fork=git@github.com:yegor256/hoc.git' '--env=fork_branch=renovate/rubocop-minitest-0.x-lockfile' '--env=head_branch=master' '--env=pull_title=Update dependency rubocop-minitest to v0.41.0' '--env=author=yegor256' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/hoc.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=109'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:yegor256/hoc.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=renovate/rubocop-minitest-0.x-lockfile'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=Update dependency rubocop-minitest to v0.41.0'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"'\'' '\'';'\'' '\''sudo apt-get update --fix-missing'\'' '\'';'\'' '\''sudo apt-get install --yes subversion diffstat'\'' '\'';'\'' '\''sudo apt-get install --yes software-properties-common'\'' '\'';'\'' '\''sudo add-apt-repository -y ppa:git-core/ppa'\'' '\'';'\'' '\''sudo apt-get update --fix-missing'\'' '\'';'\'' '\''sudo apt-get remove -y git'\'' '\'';'\'' '\''sudo apt-get install --yes git'\'' '\'';'\'' '\''bundle exec rake'\'' '\'';'\'' )')
+ scripts=('export '\''head=git@github.com:yegor256/hoc.git'\''' ';' 'export '\''pull_id=109'\''' ';' 'export '\''fork=git@github.com:yegor256/hoc.git'\''' ';' 'export '\''fork_branch=renovate/rubocop-minitest-0.x-lockfile'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=Update dependency rubocop-minitest to v0.41.0'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"' ';' 'sudo apt-get update --fix-missing' ';' 'sudo apt-get install --yes subversion diffstat' ';' 'sudo apt-get install --yes software-properties-common' ';' 'sudo add-apt-repository -y ppa:git-core/ppa' ';' 'sudo apt-get update --fix-missing' ';' 'sudo apt-get remove -y git' ';' 'sudo apt-get install --yes git' ';' 'bundle exec rake' ';')
+ container=yegor256_hoc_109
+ as_root=false
+ set -e -o pipefail
+ hostname
ip-172-31-28-41
+ pwd
/tmp/rultor-8NPP
+ 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/hoc.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/hoc.git'\''' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''head=git@github.com:yegor256/hoc.git'\''' ';' 'export '\''pull_id=109'\''' ';' 'export '\''fork=git@github.com:yegor256/hoc.git'\''' ';' 'export '\''fork_branch=renovate/rubocop-minitest-0.x-lockfile'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=Update dependency rubocop-minitest to v0.41.0'\''' ';' 'export '\''author=yegor256'\''' ';' 'pdd -f /dev/null' ';' 'sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"' ';' 'sudo apt-get update --fix-missing' ';' 'sudo apt-get install --yes subversion diffstat' ';' 'sudo apt-get install --yes software-properties-common' ';' 'sudo add-apt-repository -y ppa:git-core/ppa' ';' 'sudo apt-get update --fix-missing' ';' 'sudo apt-get remove -y git' ';' 'sudo apt-get install --yes git' ';' 'bundle exec rake' ';'
+ sensitive=()
+ set -ex -o pipefail
+ cd repo
+ git remote add fork git@github.com:yegor256/hoc.git
+ git remote update
Fetching origin
Fetching fork
From github.com:yegor256/hoc
* [new branch] master -> fork/master
* [new branch] renovate/davidanson-markdownlint-cli2-action-24.x -> fork/renovate/davidanson-markdownlint-cli2-action-24.x
* [new branch] renovate/rdoc-8.x -> fork/renovate/rdoc-8.x
* [new branch] renovate/reviewdog-action-actionlint-1.x -> fork/renovate/reviewdog-action-actionlint-1.x
* [new branch] renovate/rubocop-elegant-0.x-lockfile -> fork/renovate/rubocop-elegant-0.x-lockfile
* [new branch] renovate/rubocop-minitest-0.x-lockfile -> fork/renovate/rubocop-minitest-0.x-lockfile
* [new branch] renovate/simplecov-1.x -> fork/renovate/simplecov-1.x
* [new branch] renovate/ubuntu-26.x -> fork/renovate/ubuntu-26.x
+ 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/rubocop-minitest-0.x-lockfile
Switched to a new branch '__rultor'
Branch '__rultor' set up to track remote branch 'renovate/rubocop-minitest-0.x-lockfile' 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 'Update dependency rubocop-minitest to v0.41.0' --ff __rultor
Auto-merging Gemfile.lock
Merge made by the 'ort' strategy.
Gemfile.lock | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
+ git log -1 --show-signature
commit 7f5af2b00df1a7c24434abe7ddb4a04320f04c4f
gpg: Signature made Sun Oct 11 16:43:13 2026 UTC
gpg: using RSA key FAC962C42841735692C13FF43FD3FA7E9AF0FA4C
gpg: Good signature from "Rultor.com <gpg@rultor.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: FAC9 62C4 2841 7356 92C1 3FF4 3FD3 FA7E 9AF0 FA4C
Merge: b12677b 62d9784
Author: Rultor.com <gpg@rultor.com>
Date: Sun Oct 11 16:43:13 2026 +0000
Update dependency rubocop-minitest to v0.41.0
+ docker_when_possible
+ true
++ tail -n 1
++ sed 's/ /\n/g'
++ uptime
+ load=0.13
++ bc
++ echo 0.13 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 0.13, low enough to run a new Docker container'
load average is 0.13, 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
b343964c14ed: Verifying Checksum
b343964c14ed: Download complete
c5d1f12c356a: Verifying Checksum
c5d1f12c356a: 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_hoc_109\s*$'
+ ls -al .
total 52
drwx------ 3 ubuntu ubuntu 4096 Oct 11 16:43 .
drwxrwxrwt 12 root root 4096 Oct 11 16:43 ..
-rwxrwxr-x 1 ubuntu ubuntu 666 Oct 11 16:43 end.sh
-rwxrwxr-x 1 ubuntu ubuntu 498 Oct 11 16:43 entry.sh
-rw-rw-r-- 1 ubuntu ubuntu 5 Oct 11 16:43 pid
drwxrwxr-x 9 ubuntu ubuntu 4096 Oct 11 16:43 repo
-rw-rw-r-- 1 ubuntu ubuntu 81 Oct 11 16:43 rubygems.yml
-rwxrwxr-x 1 ubuntu ubuntu 7308 Oct 11 16:43 run.sh
-rw-rw-r-- 1 ubuntu ubuntu 876 Oct 11 16:43 script.sh
-rw-rw-r-- 1 ubuntu ubuntu 8786 Oct 11 16:43 stdout
++ pwd
++ pwd
+ docker run -t --rm -v /tmp/rultor-8NPP:/main --env=head=git@github.com:yegor256/hoc.git --env=pull_id=109 --env=fork=git@github.com:yegor256/hoc.git --env=fork_branch=renovate/rubocop-minitest-0.x-lockfile --env=head_branch=master '--env=pull_title=Update dependency rubocop-minitest to v0.41.0' --env=author=yegor256 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/hoc.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=109'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:yegor256/hoc.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=renovate/rubocop-minitest-0.x-lockfile'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=Update dependency rubocop-minitest to v0.41.0'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''pdd -f /dev/null'\'' '\'';'\'' '\''sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile"'\'' '\'';'\'' '\''sudo apt-get update --fix-missing'\'' '\'';'\'' '\''sudo apt-get install --yes subversion diffstat'\'' '\'';'\'' '\''sudo apt-get install --yes software-properties-common'\'' '\'';'\'' '\''sudo add-apt-repository -y ppa:git-core/ppa'\'' '\'';'\'' '\''sudo apt-get update --fix-missing'\'' '\'';'\'' '\''sudo apt-get remove -y git'\'' '\'';'\'' '\''sudo apt-get install --yes git'\'' '\'';'\'' '\''bundle exec rake'\'' '\'';'\'' )' --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-8NPP/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=yegor256_hoc_109 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/hoc.git' ; export 'pull_id=109' ; export 'fork=git@github.com:yegor256/hoc.git' ; export 'fork_branch=renovate/rubocop-minitest-0.x-lockfile' ; export 'head_branch=master' ; export 'pull_title=Update dependency rubocop-minitest to v0.41.0' ; export 'author=yegor256' ; pdd -f /dev/null ; sudo bundle install --no-color "--gemfile=$(pwd)/Gemfile" ; sudo apt-get update --fix-missing ; sudo apt-get install --yes subversion diffstat ; sudo apt-get install --yes software-properties-common ; sudo add-apt-repository -y ppa:git-core/ppa ; sudo apt-get update --fix-missing ; sudo apt-get remove -y git ; sudo apt-get install --yes git ; bundle exec rake ;
+ 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.9 at x86_64-linux
Reading from root dir .
Excluding target/**/*
Excluding src/main/resources/images/**/*
/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/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/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 bin/hoc ...
Reading cucumber.yml ...
Reading features/cli.feature ...
Reading features/gem_package.feature ...
Reading features/git_basics.feature ...
Reading features/git_excludes.feature ...
Reading features/step_definitions/steps.rb ...
Reading features/support/env.rb ...
Reading features/svn_basics.feature ...
Reading features/uses_config.feature ...
Reading hoc.gemspec ...
Reading lib/hoc/git.rb ...
Reading lib/hoc/hits.rb ...
Reading lib/hoc/svn.rb ...
Reading lib/hoc/version.rb ...
Reading lib/hoc.rb ...
Reading test/test__helper.rb ...
Reading test/test_git.rb ...
Reading test/test_hoc.rb ...
Reading test/test_svn.rb ...
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 ast 2.4.3
Installing ast 2.4.3
Fetching bigdecimal 4.1.2
Installing bigdecimal 4.1.2 with native extensions
Fetching builder 3.3.0
Installing builder 3.3.0
Fetching cucumber-ci-environment 10.0.1
Installing cucumber-ci-environment 10.0.1
Fetching cucumber-messages 22.0.0
Installing cucumber-messages 22.0.0
Fetching cucumber-gherkin 27.0.0
Installing cucumber-gherkin 27.0.0
Fetching cucumber-tag-expressions 6.1.2
Installing cucumber-tag-expressions 6.1.2
Fetching cucumber-core 13.0.3
Installing cucumber-core 13.0.3
Fetching cucumber-cucumber-expressions 17.1.0
Installing cucumber-cucumber-expressions 17.1.0
Fetching cucumber-html-formatter 21.15.1
Installing cucumber-html-formatter 21.15.1
Fetching diff-lcs 1.6.2
Installing diff-lcs 1.6.2
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.4 (x86_64-linux-gnu)
Installing ffi 1.17.4 (x86_64-linux-gnu)
Fetching memoist3 1.0.0
Installing memoist3 1.0.0
Fetching sys-uname 1.5.1
Installing sys-uname 1.5.1
Fetching cucumber 9.2.1
Installing cucumber 9.2.1
Fetching date 3.5.1
Installing date 3.5.1 with native extensions
Fetching docile 1.4.1
Installing docile 1.4.1
Fetching erb 6.0.4
Installing erb 6.0.4 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 minitest 5.27.0
Installing minitest 5.27.0
Fetching parallel 2.3.0
Installing parallel 2.3.0
Fetching parser 3.3.12.0
Installing parser 3.3.12.0
Fetching prism 1.9.0
Installing prism 1.9.0 with native extensions
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 tsort 0.2.0
Installing tsort 0.2.0
Fetching rdoc 6.17.0
Installing rdoc 6.17.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 ruby-progressbar 1.13.0
Installing ruby-progressbar 1.13.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.0
Installing rubocop 1.92.0
Fetching rubocop-elegant 0.5.1
Installing rubocop-elegant 0.5.1
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-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
Bundle complete! 11 Gemfile dependencies, 50 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
Post-install message from minitest:
NOTE: minitest 5 will be the last in the minitest family to support
ruby 1.8 to 2.7. If you need to keep using these versions,
you need to pin your dependency to minitest with something
like "~> 5.0". See History.rdoc to locate compatible
versions.
Further, minitest 6 will be dropping the following:
+ MiniTest (it's been Minitest for >10 years)
+ MiniTest::Unit
+ MiniTest::Unit::TestCase
+ assert_send (unless you argue for it well)
+ assert_equal nil, obj
+ mocks and stubs: moving minitest/mock.rb to its own gem
Get:1ohttp://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
Get:2ahttps://download.docker.com/linux/ubuntuenobletInRelease.[48.52kB])] [1 I
Get:3ahttps://download.docker.com/linux/ubuntu2noble/stableeamd64 Packages1[83.2 kB]
Get:4ahttp://security.ubuntu.com/ubuntuhnoble-security/universe amd64 Packages [1,546 kB]
Get:5ahttp://archive.ubuntu.com/ubuntu2noble/InRelease1[256 kB]
Get:6 http://security.ubuntu.com/ubuntu1noble-security/multiverse%amd64 Packages [61.4 kB]
Get:7 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [2,069 kB]
Get:8 http://security.ubuntu.com/ubuntu1noble-security/main7amd64aPackages [1,381 kB]
Get:9ahttp://archive.ubuntu.com/ubuntu noble-updatesBInReleasea[126ekB] B/1,381
Get:10ihttp://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
Get:11ahttp://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB]
Get:121http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB]
Get:131http://archive.ubuntu.com/ubuntusnoble/multiverse amd64 Packages [331 kB]
Get:141http://archive.ubuntu.com/ubuntusnoble/mainBamd64 Packages [1,808 kB]
Get:151http://archive.ubuntu.com/ubuntusnoble-updates/multiverse amd64 Packages [67.4 kB]
Get:161http://archive.ubuntu.com/ubuntusnoble-updates/restricted amd64 Packages [2,177 kB]
Get:171http://archive.ubuntu.com/ubuntusnoble-updates/main1amd64 Packages [1,702 kB]
Get:181http://archive.ubuntu.com/ubuntusnoble-updates/universe amd64 Packages [2,166 kB]
Get:191http://archive.ubuntu.com/ubuntusnoble-backports/multiverse1amd64.Packages [671 B]
Get:201http://archive.ubuntu.com/ubunturnoble-backports/universe amd64 Packages [36.0 kB]
Get:213http://archive.ubuntu.com/ubunturnoble-backports/main]amd64 Packages [49.0 kB]
Fetchedo33.6gMBsint5se(7,130[kB/s)ckages 31.64kB/49.0 kB 64%]
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
libapr1t64 libaprutil1t64 libserf-1-1 libsvn1 libutf8proc3
Suggested packages:
db5.3-util libapache2-mod-svn subversion-tools
The following NEW packages will be installed:
diffstat libapr1t64 libaprutil1t64 libserf-1-1 libsvn1 libutf8proc3
subversion
0 upgraded, 7 newly installed, 0 to remove and 114 not upgraded.
Need to get 2,602 kB of archives.
After this operation, 10.4 MB of additional disk space will be used.
Get:1ohttp://archive.ubuntu.com/ubuntu noble/main amd64 diffstat amd64 1.66-1build1 [29.7 kB]
Get:2ohttp://archive.ubuntu.com/ubuntu noble-updates/main amd64 libapr1t64 amd64 1.7.2-3.1ubuntu0.1 [108 kB]
Get:3Whttp://archive.ubuntu.com/ubuntu noble-updates/main amd64 libaprutil1t64 amd64 1.6.3-1.1ubuntu7.1 [92.7 kB]
Get:4Whttp://archive.ubuntu.com/ubuntu noble-updates/universe amd64 libserf-1-1 amd64 1.3.10-1ubuntu0.24.04.1 [48.2 kB]
Get:5Whttp://archive.ubuntu.com/ubuntu noble/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB]
Get:6Whttp://archive.ubuntu.com/ubuntu noble/universe amd64 libsvn1 amd64 1.14.3-1build4 [1,345 kB]
Get:7Whttp://archive.ubuntu.com/ubuntu noble/universe amd64 subversion amd64 1.14.3-1build4 [908 kB]
Fetchedo2,602]kBnin 1s9(2,7250kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package diffstat.
(Reading database ... 20501 files and directories currently installed.)
Preparing to unpack .../0-diffstat_1.66-1build1_amd64.deb ...
Unpacking diffstat (1.66-1build1) ...
Selecting previously unselected package libapr1t64:amd64.
Preparing to unpack .../1-libapr1t64_1.7.2-3.1ubuntu0.1_amd64.deb ...
Unpacking libapr1t64:amd64 (1.7.2-3.1ubuntu0.1) ...
Selecting previously unselected package libaprutil1t64:amd64.
Preparing to unpack .../2-libaprutil1t64_1.6.3-1.1ubuntu7.1_amd64.deb ...
Unpacking libaprutil1t64:amd64 (1.6.3-1.1ubuntu7.1) ...
Selecting previously unselected package libserf-1-1:amd64.
Preparing to unpack .../3-libserf-1-1_1.3.10-1ubuntu0.24.04.1_amd64.deb ...
Unpacking libserf-1-1:amd64 (1.3.10-1ubuntu0.24.04.1) ...
Selecting previously unselected package libutf8proc3:amd64.
Preparing to unpack .../4-libutf8proc3_2.9.0-1build1_amd64.deb ...
Unpacking libutf8proc3:amd64 (2.9.0-1build1) ...
Selecting previously unselected package libsvn1:amd64.
Preparing to unpack .../5-libsvn1_1.14.3-1build4_amd64.deb ...
Unpacking libsvn1:amd64 (1.14.3-1build4) ...
Selecting previously unselected package subversion.
Preparing to unpack .../6-subversion_1.14.3-1build4_amd64.deb ...
Unpacking subversion (1.14.3-1build4) ...
Setting up libutf8proc3:amd64 (2.9.0-1build1) ...
Setting up diffstat (1.66-1build1) ...
Setting up libapr1t64:amd64 (1.7.2-3.1ubuntu0.1) ...
Setting up libaprutil1t64:amd64 (1.6.3-1.1ubuntu7.1) ...
Setting up libserf-1-1:amd64 (1.3.10-1ubuntu0.24.04.1) ...
Setting up libsvn1:amd64 (1.14.3-1build4) ...
Setting up subversion (1.14.3-1build4) ...
Processing triggers for libc-bin (2.39-0ubuntu8.7) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
software-properties-common is already the newest version (0.99.49.4).
0 upgraded, 0 newly installed, 0 to remove and 114 not upgraded.
PPA publishes dbgsym, you may need to include 'main/debug' component
Repository: 'Types: deb
URIs: https://ppa.launchpadcontent.net/git-core/ppa/ubuntu/
Suites: noble
Components: main
'
Description:
The most current stable version of Git for Ubuntu.
For release candidates, go to https://launchpad.net/~git-core/+archive/candidate .
More info: https://launchpad.net/~git-core/+archive/ubuntu/ppa
Adding repository.
Hit:1ohttp://archive.ubuntu.com/ubuntu noble InRelease
Hit:2ahttps://download.docker.com/linux/ubuntuunobledInReleaseet (185.125.189.1
Hit:3ohttp://archive.ubuntu.com/ubuntu.noble-updates1InRelease[Waiting for head
Hit:4ohttp://archive.ubuntu.com/ubuntu.noble-backports9InReleaseaiting for head
Hit:5ohttp://security.ubuntu.com/ubuntuenoble-security.InReleaseitingtfor heade
Get:6ahttps://ppa.launchpadcontent.net/git-core/ppa/ubuntu)noble InRelease [24.3 kB]
Get:7Whttps://ppa.launchpadcontent.net/git-core/ppa/ubuntu noble/main amd64 Packages [3,812 B]
Fetchedo28.1gkBsint1se(35.6 kB/s)
Reading package lists... Done
Hit:1ohttp://security.ubuntu.com/ubuntu noble-security InRelease
Hit:2ohttps://download.docker.com/linux/ubuntu0noble]InReleaseing to ppa.launch
Hit:3ohttp://archive.ubuntu.com/ubuntunnoble8InRelease.188)]][Waitinggforrheade
Hit:4ahttp://archive.ubuntu.com/ubuntuhnoble-updates8InReleaseWaiting for heade
Hit:5ahttp://archive.ubuntu.com/ubuntuhnoble-backports InRelease
Hit:6ahttps://ppa.launchpadcontent.net/git-core/ppa/ubuntu noble InRelease
Readingrpackage lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
git-man liberror-perl
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
git
0 upgraded, 0 newly installed, 1 to remove and 115 not upgraded.
After this operation, 22.2 MB disk space will be freed.
(Reading database ... 20647 files and directories currently installed.)
Removing git (1:2.43.0-1ubuntu7.3) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
git-man less
Suggested packages:
gettext-base git-doc git-email git-gui gitk gitweb git-cvs git-svn
The following NEW packages will be installed:
git less
The following packages will be upgraded:
git-man
1 upgraded, 2 newly installed, 0 to remove and 114 not upgraded.
Need to get 9,925 kB of archives.
After this operation, 37.9 MB of additional disk space will be used.
Get:1ohttp://archive.ubuntu.com/ubuntu noble-updates/main amd64 less amd64 590-2ubuntu2.1 [142 kB]
Get:2 https://ppa.launchpadcontent.net/git-core/ppa/ubuntuonoble/main(amd642git-man all 1:2.55.0-0ppa1~ubuntu24.04.2 [2,373 kB]
Get:3Whttps://ppa.launchpadcontent.net/git-core/ppa/ubuntu noble/main amd64 git amd64 1:2.55.0-0ppa1~ubuntu24.04.2 [7,410 kB]
Fetchedo9,925]kB,in/2s4(4,2935kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package less.
(Reading database ... 19772 files and directories currently installed.)
Preparing to unpack .../less_590-2ubuntu2.1_amd64.deb ...
Unpacking less (590-2ubuntu2.1) ...
Preparing to unpack .../git-man_1%3a2.55.0-0ppa1~ubuntu24.04.2_all.deb ...
Unpacking git-man (1:2.55.0-0ppa1~ubuntu24.04.2) over (1:2.43.0-1ubuntu7.3) ...
Selecting previously unselected package git.
Preparing to unpack .../git_1%3a2.55.0-0ppa1~ubuntu24.04.2_amd64.deb ...
Unpacking git (1:2.55.0-0ppa1~ubuntu24.04.2) ...
Setting up less (590-2ubuntu2.1) ...
Setting up git-man (1:2.55.0-0ppa1~ubuntu24.04.2) ...
Setting up git (1:2.55.0-0ppa1~ubuntu24.04.2) ...
WARNING: consider using an array rather than a space-delimited string with cucumber_opts to avoid undesired behavior.
rm -rf coverage
/usr/local/bin/ruby -w -I"lib:lib:test" /usr/local/bundle/gems/rake-13.4.2/lib/rake/rake_test_loader.rb "test/test__helper.rb" "test/test_git.rb" "test/test_hoc.rb" "test/test_svn.rb" -v
/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/hoc.gemspec:19: warning: global variable '$RS' not initialized
Run options: -v --seed 6176
# Running:
TestSvn#test_parsing = Checked out revision 0.
A test.txt
Adding test.txt
Transmitting file data .done
Committing transaction...
Committed revision 1.
Sending test.txt
Transmitting file data .done
Committing transaction...
Committed revision 2.
D test.txt
Deleting test.txt
Committing transaction...
Committed revision 3.
Updating '.':
At revision 3.
0.26 s = .
TestSvn#test_parsing_empty_repo = 0.00 s = S
TestGit#test_parsing_with_empty_git = fatal: your current branch 'master' does not have any commits yet
0.01 s = .
TestGit#test_ignores_binary_files = 65536+0 records in
65536+0 records out
65536 bytes (66 kB, 64 KiB) copied, 0.171643 s, 382 kB/s
65536+0 records in
65536+0 records out
65536 bytes (66 kB, 64 KiB) copied, 0.173455 s, 378 kB/s
0.39 s = .
TestGit#test_parsing = + cd /tmp/test20261011-1663-kmksol
+ git init --quiet .
+ git config core.hooksPath /dev/null
+ git config user.email test@zerocracy.com
+ git config user.name test
+ echo hello, world!
+ git add test.txt
+ git commit -qam add line
+ echo good bye, world!
+ git commit -qam modify line
+ rm test.txt
+ git add test.txt
+ git commit -qam delete line
0.04 s = .
TestHOC#test_fails_if_not_int = 0.00 s = .
TestHOC#test_basic_git = 33mhint: Using 'master' as the name for the initial branch. This default branch namem
33mhint: will change to "main" in Git 3.0. To configure the initial branch namem
33mhint: to use in all of your new repositories, which will suppress this warning,m
33mhint: call:m
33mhint:m
33mhint: git config --global init.defaultBranch <name>m
33mhint:m
33mhint: Names commonly chosen instead of 'master' are 'main', 'trunk' andm
33mhint: 'development'. The just-created branch can be renamed via this command:m
33mhint:m
33mhint: git branch -m <name>m
33mhint:m
33mhint: Disable this message with "git config set advice.defaultBranchName false"m
Initialized empty Git repository in /tmp/test20261011-1663-wln992/.git/
[master (root-commit) bb3acdc] test
1 file changed, 1 insertion(+)
create mode 100644 test.txt
0.08 s = .
TestHOC#test_basic_svn = Checked out revision 0.
A test.txt
Adding test.txt
Transmitting file data .done
Committing transaction...
Committed revision 1.
Sending test.txt
Transmitting file data .done
Committing transaction...
Committed revision 2.
D test.txt
Deleting test.txt
Committing transaction...
Committed revision 3.
Updating '.':
At revision 3.
0.24 s = .
TestHOC#test_fails_if_not_repo = 0.00 s = .
Finished in 1.030033s, 8.7376 runs/s, 11.6501 assertions/s.
1) Skipped:
TestSvn#test_parsing_empty_repo [test/test_svn.rb:40]:
fails now
9 runs, 12 assertions, 0 failures, 0 errors, 1 skips
Coverage report generated for Unit Tests to /home/r/repo/coverage.
Line Coverage: 93.23% (124 / 133)
/usr/local/bin/ruby -S bundle exec cucumber --format pretty --no-color --profile travis
/usr/local/bundle/gems/cucumber-9.2.1/lib/cucumber/cli/main.rb:5: warning: logger was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 4.0.0.
You can add logger to your Gemfile or gemspec to silence this warning.
Using the travis profile...
# SPDX-FileCopyrightText: Copyright (c) 2014-2026 Yegor Bugayenko
# SPDX-License-Identifier: MIT
Feature: Command Line Processing
As a source code writer I want to be able to
calculate my hits-of-code metric
Scenario: Help can be printed # features/cli.feature:7
When I run bin/hoc with "-h" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
And Stdout contains "--format" # features/step_definitions/steps.rb:43
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 # features/gem_package.feature:7
Given It is Unix # features/step_definitions/steps.rb:21
Given I have a "execs.rb" file with content: # features/step_definitions/steps.rb:52
"""
#!/usr/bin/env ruby
require 'rubygems'
spec = Gem::Specification::load('./spec.rb')
raise 'no executables' if spec.executables.empty?
"""
When I run bash: # features/step_definitions/steps.rb:29
"""
cd hoc
gem build hoc.gemspec
gem specification --ruby hoc-*.gem > ../spec.rb
cd ..
ruby execs.rb
"""
Then Exit code is zero # features/step_definitions/steps.rb:48
Feature: Git repo processing
As a source code writer I want to be able to
calculate my hits-of-code metric
Scenario: Simple git repo # features/git_basics.feature:7
Given It is Unix # features/step_definitions/steps.rb:21
Given I run bash: # features/step_definitions/steps.rb:29
"""
git init --quiet .
git config core.hooksPath /dev/null
git config user.email test@zerocracy.com
git config user.name test
echo 'hello, world!' > test.txt
git add test.txt
git commit -qam test
"""
When I run bin/hoc with "-f int" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
And Stdout contains "1" # features/step_definitions/steps.rb:43
Scenario: Real git repo # features/git_basics.feature:23
Given I run bash: # features/step_definitions/steps.rb:29
"""
git clone --quiet https://github.com/teamed/hoc.git hoc-repo
"""
When I run bin/hoc with "-f int -d hoc-repo" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
Feature: Exclude dirs from Git counting
As a source code writer I want to be able to
exclude certain files from counting
Scenario: Simple git repo # features/git_excludes.feature:7
Given It is Unix # features/step_definitions/steps.rb:21
warning: adding embedded git repository: hoc
33mhint: You've added another git repository inside your current repository.m
33mhint: Clones of the outer repository will not contain the contents ofm
33mhint: the embedded repository and will not know how to obtain it.m
33mhint: If you meant to add a submodule, use:m
33mhint:m
33mhint: git submodule add <url> hocm
33mhint:m
33mhint: If you added this path by mistake, you can remove it from them
33mhint: index with:m
33mhint:m
33mhint: git rm --cached hocm
33mhint:m
33mhint: See "git help submodule" for more information.m
33mhint: Disable this message with "git config set advice.addEmbeddedRepo false"m
Given I run bash: # features/step_definitions/steps.rb:29
"""
git init --quiet .
git config core.hooksPath /dev/null
git config user.email test@zerocracy.com
git config user.name test
mkdir x
echo 'hello, world!' > x/invalid.txt
echo 'hello, world!' > valid.txt
git add .
git commit -qam test
"""
When I run bin/hoc with "-e x/** -e a.txt" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
And Stdout contains "1" # features/step_definitions/steps.rb:43
Feature: SVN Repo Processing
As a source code writer I want to be able to
calculate my hits-of-code metric
Scenario: Simple SVN repo # features/svn_basics.feature:7
Given It is Unix # features/step_definitions/steps.rb:21
Given I run bash: # features/step_definitions/steps.rb:29
"""
svnadmin create base
svn co file://$(pwd)/base repo
cd repo
echo 'Hello, world!' > test.txt
svn add test.txt
svn ci -m 'first commit'
echo 'Bye!' > test.txt
svn ci -m 'second commit'
svn rm test.txt
svn ci -m 'third commit'
svn up
"""
When I run bin/hoc with "-f int -d repo" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
Scenario: Real SVN repo # features/svn_basics.feature:26
Given I run bash: # features/step_definitions/steps.rb:29
"""
svn co https://svn.apache.org/repos/asf/maven/skins/tags/maven-skins-9/src/site
"""
When I run bin/hoc with "-f int -d site" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
Feature: Using .hoc config file
As a source code writer I want to be able to
call HOC as a command line tool and configure
it via .hoc configuration file
Scenario: Simple hoc counting # features/uses_config.feature:8
Given It is Unix # features/step_definitions/steps.rb:21
Given I run bash: # features/step_definitions/steps.rb:29
"""
echo '--help' > .hoc
"""
When I run bin/hoc with "-f int" # features/step_definitions/steps.rb:37
Then Exit code is zero # features/step_definitions/steps.rb:48
And Stdout contains "[options]" # features/step_definitions/steps.rb:43
8 scenarios (8 passed)
32 steps (32 passed)
0m6.746s
┌──────────────────────────────────────────────────────────────────────────────┐
│ Share your Cucumber Report with your team at https://reports.cucumber.io │
│ │
│ Command line option: --publish │
│ Environment variable: CUCUMBER_PUBLISH_ENABLED=true │
│ cucumber.yml: default: --publish │
│ │
│ More information at https://cucumber.io/docs/cucumber/environment-variables/ │
│ │
│ To disable this message, specify CUCUMBER_PUBLISH_QUIET=true or use the │
│ --publish-quiet option. You can also add this to your cucumber.yml: │
│ default: --publish-quiet │
└──────────────────────────────────────────────────────────────────────────────┘
Running RuboCop...
Inspecting 14 files
32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m32m.0m
14 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/hoc.git
b12677b..7f5af2b master -> master
container 5c26fff1af5d008e6722b1630f9a8492036df3c7dc8d55e46dd667ea69b6e4fe is dead
Sun Oct 11 16:46:25 UTC 2026