Homebrew / homebrew-portable-ruby

🚗 Versions of Ruby that can be installed and run from anywhere on the filesystem.
BSD 2-Clause "Simplified" License
131 stars 42 forks source link

compiling ruby deps natively, causes bundler to fail in unsupported architectures. #104

Closed rmNULL closed 4 years ago

rmNULL commented 4 years ago

Summary

bundle crashes after update to portable ruby 2.6.3_1

Reproduction Steps

docker run -it debian

apt update && apt install -y curl file git locales sudo
echo "LC_ALL=en_US.UTF-8" >> /etc/environment
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
locale-gen en_US.UTF-8
useradd -m -s /bin/bash linuxbrew
sudo -i -u linuxbrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)

# crashes instead of "Could not locate Gemfile"
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/bundle

Expected Output

Could not locate Gemfile

or not crash

Error log

/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54: [BUG] Illegal instruction at 0x00000000007cda7a
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0026 p:---- s:0162 e:000161 CFUNC  :require
c:0025 p:0110 s:0157 e:000156 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_requi
c:0024 p:0054 s:0145 e:000144 TOP    /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/openssl.rb:14 [FINISH]
c:0023 p:---- s:0142 e:000141 CFUNC  :require
c:0022 p:0110 s:0137 e:000136 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_requi
c:0021 p:0020 s:0125 e:000124 TOP    /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/security.rb:12 [FINISH]
c:0020 p:---- s:0121 e:000120 CFUNC  :require
c:0019 p:0110 s:0116 e:000115 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_requi
c:0018 p:0020 s:0104 e:000103 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/rubygems_integration.r
c:0017 p:0024 s:0100 e:000099 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/install.rb:141
c:0016 p:0113 s:0095 e:000094 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/install.rb:24
c:0015 p:0021 s:0086 e:000085 BLOCK  /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:235
c:0014 p:0037 s:0083 e:000082 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/settings.rb:143
c:0013 p:0052 s:0077 e:000076 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:234
c:0012 p:0064 s:0073 e:000072 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/c
c:0011 p:0047 s:0065 e:000064 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/i
c:0010 p:0261 s:0058 e:000057 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor.r
c:0009 p:0009 s:0045 e:000044 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:27
c:0008 p:0064 s:0040 e:000039 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/b
c:0007 p:0009 s:0033 e:000032 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:18
c:0006 p:0076 s:0027 e:000026 BLOCK  /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/b
c:0005 p:0002 s:0021 e:000020 METHOD /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/friendly_errors.rb:124
c:0004 p:0048 s:0016 E:001380 TOP    /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/b [FINISH]
c:0003 p:---- s:0013 e:000012 CFUNC  :load
c:0002 p:0109 s:0008 E:002250 EVAL   /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/bundle:30 [FINISH]
c:0001 p:0000 s:0003 E:001740 (none) [FINISH]

-- Ruby level backtrace information ----------------------------------------
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/bundle:30:in `<main>'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/bundle:30:in `load'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:22:in `<top (required)>'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/friendly_errors.rb:124:in `with_friendly_errors'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:30:in `block in <top (required)>'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:18:in `start'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/base.rb:466:in `start'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:27:in `dispatch'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:234:in `install'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/settings.rb:143:in `temporary'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb:235:in `block in install'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/install.rb:24:in `run'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/install.rb:141:in `check_trust_policy'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/rubygems_integration.rb:345:in `security_policies'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/security.rb:12:in `<top (required)>'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/openssl.rb:14:in `<top (required)>'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'

-- Machine register context ------------------------------------------------
 RIP: 0x00000000007cda7a RBP: 0x0000000000cc0630 RSP: 0x00007ffdb7b28af0
 RAX: 0x0000000000000164 RBX: 0x0000000000000000 RCX: 0x0000000000000008
 RDX: 0x000000000000000d RDI: 0x0000000000000045 RSI: 0x0000000000000013
  R8: 0x0000000000000007  R9: 0x0000000000000002 R10: 0xfffffffffffffbcf
 R11: 0x00007fbb3e01eee0 R12: 0x0000000000000020 R13: 0x0000000000000200
 R14: 0x00000000030876d0 R15: 0x00000000029c0dc0 EFL: 0x0000000000010212

-- C level backtrace information -------------------------------------------
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6ec893) [0x6ec893]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6eca9b) [0x6eca9b]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5a6ed1) [0x5a6ed1]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x67e09e) [0x67e09e]
/lib/x86_64-linux-gnu/libpthread.so.0(__restore_rt+0x0) [0x7fbb3e024730]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7cda7a) [0x7cda7a]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7d74c4) [0x7d74c4]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7cd32d) [0x7cd32d]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7cd6a8) [0x7cd6a8]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7d79bb) [0x7d79bb]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7c3530) [0x7c3530]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x8ad5e1) [0x8ad5e1]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7cb269) [0x7cb269]
/lib/x86_64-linux-gnu/libpthread.so.0(0xf997) [0x7fbb3e021997]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x81ec99) [0x81ec99]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x7cb7f7) [0x7cb7f7]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x72dbd8) [0x72dbd8]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x526d7d) [0x526d7d]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e8224) [0x5e8224]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e83e9) [0x5e83e9]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d1722) [0x6d1722]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6df9a4) [0x6df9a4]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d793a) [0x6d793a]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e6b76) [0x5e6b76]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e8317) [0x5e8317]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e83e9) [0x5e83e9]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d1722) [0x6d1722]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6db4b6) [0x6db4b6]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6dc5bb) [0x6dc5bb]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6df9a4) [0x6df9a4]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d793a) [0x6d793a]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e6b76) [0x5e6b76]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e8317) [0x5e8317]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e83e9) [0x5e83e9]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d1722) [0x6d1722]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6db4b6) [0x6db4b6]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6dc5bb) [0x6dc5bb]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6df9a4) [0x6df9a4]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d793a) [0x6d793a]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e6b76) [0x5e6b76]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e6df5) [0x5e6df5]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5e6eaa) [0x5e6eaa]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d1722) [0x6d1722]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6db4b6) [0x6db4b6]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6dc5bb) [0x6dc5bb]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6df9a4) [0x6df9a4]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x6d793a) [0x6d793a]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5aada0) [0x5aada0]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5ac76d) [0x5ac76d]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x5aee5e) [0x5aee5e]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x495459) [0x495459]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb) [0x7fbb3dca209b]
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby(0x495489) [0x495489]

-- Other runtime information -----------------------------------------------

* Loaded script: /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/bundle

* Loaded features:

    0 enumerator.so
    1 thread.rb
    2 rational.so
    3 complex.so
    4 encdb.so
    5 trans/transdb.so
    6 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/x86_64-linux/rbconfig.rb
    7 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/compatibility.rb
    8 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/defaults.rb
    9 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/deprecate.rb
   10 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/errors.rb
   11 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/version.rb
   12 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/requirement.rb
   13 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/platform.rb
   14 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/basic_specification.rb
   15 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/stub_specification.rb
   16 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/delegate.rb
   17 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/rfc2396_parser.rb
   18 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/rfc3986_parser.rb
   19 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/common.rb
   20 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/generic.rb
   21 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/file.rb
   22 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/ftp.rb
   23 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/http.rb
   24 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/https.rb
   25 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/ldap.rb
   26 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/ldaps.rb
   27 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri/mailto.rb
   28 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/uri.rb
   29 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/specification_policy.rb
   30 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/util/list.rb
   31 stringio.so
   32 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/specification.rb
   33 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/exceptions.rb
   34 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/util.rb
   35 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/bundler_version_finder.rb
   36 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/dependency.rb
   37 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_gem.rb
   38 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/monitor.rb
   39 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb
   40 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/core_ext/kernel_warn.rb
   41 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems.rb
   42 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/path_support.rb
   43 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/version.rb
   44 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/core_ext/name_error.rb
   45 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/levenshtein.rb
   46 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/jaro_winkler.rb
   47 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checker.rb
   48 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
   49 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
   50 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
   51 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
   52 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checkers/key_error_checker.rb
   53 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/spell_checkers/null_checker.rb
   54 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean/formatters/plain_formatter.rb
   55 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/gems/2.6.0/gems/did_you_mean-1.3.0/lib/did_you_mean.rb
   56 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/tsort.rb
   57 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/request_set/gem_dependency_api.rb
   58 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/request_set/lockfile/parser.rb
   59 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/request_set/lockfile/tokenizer.rb
   60 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/request_set/lockfile.rb
   61 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/request_set.rb
   62 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb
   63 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/errors.rb
   64 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/set.rb
   65 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/action.rb
   66 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb
   67 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_vertex.rb
   68 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb
   69 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb
   70 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/set_payload.rb
   71 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/tag.rb
   72 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/log.rb
   73 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/vertex.rb
   74 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb
   75 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/state.rb
   76 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/modules/specification_provider.rb
   77 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/delegates/resolution_state.rb
   78 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb
   79 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb
   80 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/resolver.rb
   81 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo/modules/ui.rb
   82 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo/lib/molinillo.rb
   83 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/molinillo.rb
   84 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/activation_request.rb
   85 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/conflict.rb
   86 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/dependency_request.rb
   87 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/requirement_list.rb
   88 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/stats.rb
   89 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/set.rb
   90 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/api_set.rb
   91 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/composed_set.rb
   92 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/best_set.rb
   93 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/current_set.rb
   94 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/git_set.rb
   95 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/index_set.rb
   96 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/installer_set.rb
   97 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/lock_set.rb
   98 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/vendor_set.rb
   99 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/source_set.rb
  100 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/specification.rb
  101 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/spec_specification.rb
  102 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/api_specification.rb
  103 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/git_specification.rb
  104 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/index_specification.rb
  105 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/installed_specification.rb
  106 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/local_specification.rb
  107 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/lock_specification.rb
  108 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver/vendor_specification.rb
  109 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/resolver.rb
  110 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source/git.rb
  111 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source/installed.rb
  112 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source/specific_file.rb
  113 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source/local.rb
  114 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source/lock.rb
  115 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source/vendor.rb
  116 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/source.rb
  117 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/version.rb
  118 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/compatibility_guard.rb
  119 etc.so
  120 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/fileutils/lib/fileutils.rb
  121 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendored_fileutils.rb
  122 pathname.so
  123 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/pathname.rb
  124 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/errors.rb
  125 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/environment_preserver.rb
  126 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/plugin/api.rb
  127 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/plugin.rb
  128 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/gem_helpers.rb
  129 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/match_platform.rb
  130 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/rubygems_ext.rb
  131 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/text.rb
  132 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/user_interaction.rb
  133 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/config_file.rb
  134 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/rubygems_integration.rb
  135 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/constants.rb
  136 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/current_ruby.rb
  137 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/build_metadata.rb
  138 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler.rb
  139 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/cgi/core.rb
  140 cgi/escape.so
  141 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/cgi/util.rb
  142 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/cgi/cookie.rb
  143 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/cgi.rb
  144 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/command.rb
  145 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb
  146 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/core_ext/ordered_hash.rb
  147 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/error.rb
  148 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/invocation.rb
  149 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/parser/argument.rb
  150 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/parser/arguments.rb
  151 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/parser/option.rb
  152 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/parser/options.rb
  153 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/parser.rb
  154 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/shell.rb
  155 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/line_editor/basic.rb
  156 readline.so
  157 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/line_editor/readline.rb
  158 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/line_editor.rb
  159 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/util.rb
  160 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/base.rb
  161 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor.rb
  162 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendored_thor.rb
  163 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/friendly_errors.rb
  164 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/common.rb
  165 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/settings.rb
  166 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/feature_flag.rb
  167 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/shared_helpers.rb
  168 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/rubygems/ext/builder.rb
  169 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/plugin.rb
  170 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli.rb
  171 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/shell/basic.rb
  172 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/shell/color.rb
  173 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/ui.rb
  174 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/ui/silent.rb
  175 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/ui/rg_proxy.rb
  176 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/ui/shell.rb
  177 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/cli/install.rb
  178 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/bundler/settings/validator.rb
  179 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/fileutils/version.rb
  180 /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/lib/ruby/2.6.0/fileutils.rb

* Process memory map:

00400000-00dbe000 r-xp 00000000 08:12 478892                             /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby
00fbd000-01005000 rw-p 009bd000 08:12 478892                             /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby
01005000-01021000 rw-p 00000000 00:00 0 
0286f000-031ac000 rw-p 00000000 00:00 0                                  [heap]
7fbb3ae08000-7fbb3afc6000 r--s 00000000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3afc6000-7fbb3afea000 r--s 00000000 08:12 677723                     /lib/x86_64-linux-gnu/libpthread-2.28.so
7fbb3afea000-7fbb3baf6000 r--s 00000000 08:12 478892                     /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby
7fbb3baf6000-7fbb3baf9000 r--p 00000000 08:12 677682                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7fbb3baf9000-7fbb3bb0a000 r-xp 00003000 08:12 677682                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7fbb3bb0a000-7fbb3bb0d000 r--p 00014000 08:12 677682                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7fbb3bb0d000-7fbb3bb0e000 ---p 00017000 08:12 677682                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7fbb3bb0e000-7fbb3bb0f000 r--p 00017000 08:12 677682                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7fbb3bb0f000-7fbb3bb10000 rw-p 00018000 08:12 677682                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7fbb3bb10000-7fbb3dc7e000 rw-p 00000000 00:00 0 
7fbb3dc7e000-7fbb3dca0000 r--p 00000000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3dca0000-7fbb3dde8000 r-xp 00022000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3dde8000-7fbb3de34000 r--p 0016a000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3de34000-7fbb3de35000 ---p 001b6000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3de35000-7fbb3de39000 r--p 001b6000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3de39000-7fbb3de3b000 rw-p 001ba000 08:12 677664                     /lib/x86_64-linux-gnu/libc-2.28.so
7fbb3de3b000-7fbb3de3f000 rw-p 00000000 00:00 0 
7fbb3de3f000-7fbb3de40000 r--p 00000000 08:12 677743                     /lib/x86_64-linux-gnu/libutil-2.28.so
7fbb3de40000-7fbb3de41000 r-xp 00001000 08:12 677743                     /lib/x86_64-linux-gnu/libutil-2.28.so
7fbb3de41000-7fbb3de42000 r--p 00002000 08:12 677743                     /lib/x86_64-linux-gnu/libutil-2.28.so
7fbb3de42000-7fbb3de43000 r--p 00002000 08:12 677743                     /lib/x86_64-linux-gnu/libutil-2.28.so
7fbb3de43000-7fbb3de44000 rw-p 00003000 08:12 677743                     /lib/x86_64-linux-gnu/libutil-2.28.so
7fbb3de44000-7fbb3de46000 rw-p 00000000 00:00 0 
7fbb3de46000-7fbb3de53000 r--p 00000000 08:12 677689                     /lib/x86_64-linux-gnu/libm-2.28.so
7fbb3de53000-7fbb3def2000 r-xp 0000d000 08:12 677689                     /lib/x86_64-linux-gnu/libm-2.28.so
7fbb3def2000-7fbb3dfc7000 r--p 000ac000 08:12 677689                     /lib/x86_64-linux-gnu/libm-2.28.so
7fbb3dfc7000-7fbb3dfc8000 r--p 00180000 08:12 677689                     /lib/x86_64-linux-gnu/libm-2.28.so
7fbb3dfc8000-7fbb3dfc9000 rw-p 00181000 08:12 677689                     /lib/x86_64-linux-gnu/libm-2.28.so
7fbb3dfc9000-7fbb3dfca000 r--p 00000000 08:12 677672                     /lib/x86_64-linux-gnu/libcrypt-2.28.so
7fbb3dfca000-7fbb3dfd0000 r-xp 00001000 08:12 677672                     /lib/x86_64-linux-gnu/libcrypt-2.28.so
7fbb3dfd0000-7fbb3dfd2000 r--p 00007000 08:12 677672                     /lib/x86_64-linux-gnu/libcrypt-2.28.so
7fbb3dfd2000-7fbb3dfd3000 ---p 00009000 08:12 677672                     /lib/x86_64-linux-gnu/libcrypt-2.28.so
7fbb3dfd3000-7fbb3dfd4000 r--p 00009000 08:12 677672                     /lib/x86_64-linux-gnu/libcrypt-2.28.so
7fbb3dfd4000-7fbb3dfd5000 rw-p 0000a000 08:12 677672                     /lib/x86_64-linux-gnu/libcrypt-2.28.so
7fbb3dfd5000-7fbb3e003000 rw-p 00000000 00:00 0 
7fbb3e003000-7fbb3e004000 r--p 00000000 08:12 677674                     /lib/x86_64-linux-gnu/libdl-2.28.so
7fbb3e004000-7fbb3e005000 r-xp 00001000 08:12 677674                     /lib/x86_64-linux-gnu/libdl-2.28.so
7fbb3e005000-7fbb3e006000 r--p 00002000 08:12 677674                     /lib/x86_64-linux-gnu/libdl-2.28.so
7fbb3e006000-7fbb3e007000 r--p 00002000 08:12 677674                     /lib/x86_64-linux-gnu/libdl-2.28.so
7fbb3e007000-7fbb3e008000 rw-p 00003000 08:12 677674                     /lib/x86_64-linux-gnu/libdl-2.28.so
7fbb3e008000-7fbb3e00a000 r--p 00000000 08:12 677727                     /lib/x86_64-linux-gnu/librt-2.28.so
7fbb3e00a000-7fbb3e00e000 r-xp 00002000 08:12 677727                     /lib/x86_64-linux-gnu/librt-2.28.so
7fbb3e00e000-7fbb3e010000 r--p 00006000 08:12 677727                     /lib/x86_64-linux-gnu/librt-2.28.so
7fbb3e010000-7fbb3e011000 r--p 00007000 08:12 677727                     /lib/x86_64-linux-gnu/librt-2.28.so
7fbb3e011000-7fbb3e012000 rw-p 00008000 08:12 677727                     /lib/x86_64-linux-gnu/librt-2.28.so
7fbb3e012000-7fbb3e018000 r--p 00000000 08:12 677723                     /lib/x86_64-linux-gnu/libpthread-2.28.so
7fbb3e018000-7fbb3e027000 r-xp 00006000 08:12 677723                     /lib/x86_64-linux-gnu/libpthread-2.28.so
7fbb3e027000-7fbb3e02d000 r--p 00015000 08:12 677723                     /lib/x86_64-linux-gnu/libpthread-2.28.so
7fbb3e02d000-7fbb3e02e000 r--p 0001a000 08:12 677723                     /lib/x86_64-linux-gnu/libpthread-2.28.so
7fbb3e02e000-7fbb3e02f000 rw-p 0001b000 08:12 677723                     /lib/x86_64-linux-gnu/libpthread-2.28.so
7fbb3e02f000-7fbb3e033000 rw-p 00000000 00:00 0 
7fbb3e036000-7fbb3e038000 rw-p 00000000 00:00 0 
7fbb3e038000-7fbb3e039000 r--p 00000000 08:12 677650                     /lib/x86_64-linux-gnu/ld-2.28.so
7fbb3e039000-7fbb3e057000 r-xp 00001000 08:12 677650                     /lib/x86_64-linux-gnu/ld-2.28.so
7fbb3e057000-7fbb3e05f000 r--p 0001f000 08:12 677650                     /lib/x86_64-linux-gnu/ld-2.28.so
7fbb3e05f000-7fbb3e060000 r--p 00026000 08:12 677650                     /lib/x86_64-linux-gnu/ld-2.28.so
7fbb3e060000-7fbb3e061000 rw-p 00027000 08:12 677650                     /lib/x86_64-linux-gnu/ld-2.28.so
7fbb3e061000-7fbb3e062000 rw-p 00000000 00:00 0 
7ffdb732d000-7ffdb7b2c000 rw-p 00000000 00:00 0                          [stack]
7ffdb7b7e000-7ffdb7b81000 r--p 00000000 00:00 0                          [vvar]
7ffdb7b81000-7ffdb7b82000 r-xp 00000000 00:00 0                          [vdso]

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: https://www.ruby-lang.org/bugreport.html
Bo98 commented 4 years ago

Interestingly, I can't reproduce this on my macOS install or on the homebrew/brew docker container.

rmNULL commented 4 years ago

Interestingly, I can't reproduce this on my macOS install or on the homebrew/brew docker container.

the docker debian image is fresh one. Does that not count this as a bug ?

Bo98 commented 4 years ago

Oh, I'm not saying it's not a bug. I'm just wondering why it's only crashing under certain setups - and what part of that setup might be triggering it.

I just tried a fresh Debian container myself with the reproduction steps you provided and also couldn't reproduce. I'll keep trying though.

rmNULL commented 4 years ago

@Bo98 you couldn't reproduce in docker image ? that's strange, does docker take anything user environment ?

Bo98 commented 4 years ago

Illegal instruction

Could it perhaps be a CPU instruction set issue? What CPU are you using?

rmNULL commented 4 years ago
HOMEBREW_VERSION: 2.4.0-10-gc120b61-dirty
ORIGIN: https://github.com/Homebrew/brew
HEAD: c120b61204b2e9883a3c4b3e2a7cfcb12314038a
Last commit: 3 hours ago
Core tap ORIGIN: https://github.com/Homebrew/linuxbrew-core
Core tap HEAD: 823e6f6c296c8c40afbfc401b7f46cdb7eaab68e
Core tap last commit: 3 hours ago
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_DEVELOPER: set
HOMEBREW_DISPLAY: :0.0
HOMEBREW_EDITOR: nvim
HOMEBREW_MAKE_JOBS: 4
CPU: quad-core 64-bit ivybridge
Homebrew Ruby: 2.6.3 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_1/bin/ruby
Clang: 10.0 build (parse error)
Git: 2.27.0 => /bin/git
Curl: 7.70.0 => /usr/bin/curl
Kernel: Linux 5.4.45_1 x86_64 GNU/Linux
OS: Void Linux (void)
Host glibc: 2.30
/usr/bin/gcc: 9.3.0
glibc: N/A
gcc: N/A
xorg: N/A
rmNULL commented 4 years ago

Illegal instruction

Could it perhaps be a CPU instruction set issue? What CPU are you using?

x86_64

woodruffw commented 4 years ago

Could it perhaps be a CPU instruction set issue? What CPU are you using?

x86_64

@Bo98 probably means what specific sub-family of x86-64, since Homebrew only (AFAIK) supports x86-64. What does /proc/cpuinfo show?

rmNULL commented 4 years ago

@Bo98 probably means what specific sub-family of x86-64, since Homebrew only (AFAIK) supports x86-64. What does /proc/cpuinfo show?

processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
stepping    : 9
microcode   : 0x16
cpu MHz     : 2320.315
cache size  : 6144 KB
physical id : 0
siblings    : 4
core id     : 0
cpu cores   : 4
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips    : 6784.85
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
stepping    : 9
microcode   : 0x16
cpu MHz     : 2352.097
cache size  : 6144 KB
physical id : 0
siblings    : 4
core id     : 1
cpu cores   : 4
apicid      : 2
initial apicid  : 2
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips    : 6784.85
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 2
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
stepping    : 9
microcode   : 0x16
cpu MHz     : 1890.056
cache size  : 6144 KB
physical id : 0
siblings    : 4
core id     : 2
cpu cores   : 4
apicid      : 4
initial apicid  : 4
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips    : 6784.85
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 2
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
stepping    : 9
microcode   : 0x16
cpu MHz     : 1890.056
cache size  : 6144 KB
physical id : 0
siblings    : 4
core id     : 2
cpu cores   : 4
apicid      : 4
initial apicid  : 4
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips    : 6784.85
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 3
vendor_id   : GenuineIntel
cpu family  : 6
model       : 58
model name  : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
stepping    : 9
microcode   : 0x16
cpu MHz     : 1647.517
cache size  : 6144 KB
physical id : 0
siblings    : 4
core id     : 3
cpu cores   : 4
apicid      : 6
initial apicid  : 6
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips    : 6784.85
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:
Bo98 commented 4 years ago

Ok, just ran the Linux build of portable Ruby through a disassembler. Your crash is when it hits

shlx rcx, rbx, rdx

This is a part of Bit Manipulation Instruction Set 2 (BMI2) which was introduced with Haswell. Haswell is one generation newer than the Ivy Bridge you are running.

I think the Linux build is miscompiled. I'm not sure how that happened though - it should be compiled with -march=core2.

rmNULL commented 4 years ago

@Bo98 Good find, that should be fixed soon then. Thanks :1st_place_medal:

Bo98 commented 4 years ago

Ok, I figured out how it happened. On Linux, the value of -march is calculated here: https://github.com/Homebrew/brew/blob/e254e804ee974db8dfea3731484cf3d7b39f1439/Library/Homebrew/extend/os/linux/extend/ENV/shared.rb

Basically:

While core2 should be chosen for Ruby itself - it isn't for all of the dependencies as we do not build bottles for them. We run brew install -s, as seen here: https://github.com/Homebrew/homebrew-portable-ruby/blob/6e0078869cb9d2f533472f5bef7d6ea87d655728/cmd/portable-package.rb#L43-L44

This invokation will result in -march=native for all dependencies, which are later statically linked into Ruby.

rmNULL commented 4 years ago

@Bo98 Building from source in brew scenario usually means it will be used only in the build machine, using native instruction makes sense.

In vendor ruby you build on native, and distribute it to others(who may have incompatible arch as in this case). is that correct ?

sjackman commented 4 years ago

While core2 should be chosen for Ruby itself - it isn't for all of the dependencies as we do not build bottles for them.

🤦‍♂️ Good find, Bo, super sleuth! 🕵️‍♂️

sjackman commented 4 years ago

If none of the dependencies have a postinstall, the simplest solution is to replace brew install -s with brew install --build-bottle. That could be fragile if one of the dependencies later gains a necessary postinstall. Is --bottle-arch ignored in brew install -s --bottle-arch=core2 ?

Bo98 commented 4 years ago

The use of -s on dependencies is Linux specific. The comment by it says Avoid installing glibc. Bottles depend on glibc. Is this still a concern? (Edit: ah I see - I misunderstood. It was because we want to build the likes of pkg-config from source too to avoid using bottles rather than producing.)

Is --bottle-arch ignored in brew install -s --bottle-arch=core2 ?

Yes.

In vendor ruby you build on native, and distribute it to others(who may have incompatible arch as in this case). is that correct ?

Yes. We should not be using a native -march build for that reason.

mistydemeo commented 4 years ago

Excellent catch. This is definitely a bug in brew portable-package. I'll open a PR to fix that.

Bo98 commented 4 years ago

Ok it was doing brew install -s --build-bottle before, via the HOMEBREW_BUILD_BOTTLE env but that env has since been removed: https://github.com/Homebrew/brew/commit/674259d691ef2380595539d0387030892e215917. That will explain how it worked with revision 0. Adding --build-bottle is probably the easiest fix.

rmNULL commented 4 years ago

thanks @Bo98 @mistydemeo , it's fine on the user end now.