rubyjs / mini_racer

Minimal embedded v8
MIT License
598 stars 93 forks source link

Update to Node 16.17, 17.9.1, 18.8.0: test_locale fails (es-MX) or crashes (fr-FR) #259

Closed lloeki closed 1 year ago

lloeki commented 2 years ago

While attempting to evaluate #232 I hit an issue on Linux: either es-MX is claimed to be missing, or when replacing it with fr-FR it produces a segfault.

The failure (es-MX) + crash (fr-FR) happened locally on these platforms (which were native GCC builds on their respective x86_64 and aarch64 CPUs):

The failure (es-MX) / crash (fr-FR) happened in CI on these platforms (native GCC):

Neither the failure nor the crash happen in CI on these platforms (which were cross-compiled by GCC), producing only a value mismatch when the locale value is changed (expected: es-MX does not return leading zeroes whereas fr-FR does):

All Ruby versions are affected. Moving from 17.3.1 to 17.9.1 did not help.

Crash log:

/code/test/mini_racer/lib/mini_racer.rb:223: [BUG] Segmentation fault at 0x00000000000011f8
ruby 2.4.10p364 (2020-03-31 revision 67879) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0029 p:---- s:0159 e:000158 CFUNC  :eval_unsafe
c:0028 p:0014 s:0153 e:000152 BLOCK  /code/test/mini_racer/lib/mini_racer.rb:223 [FINISH]
c:0027 p:0016 s:0150 e:000149 METHOD /code/test/mini_racer/lib/mini_racer.rb:343
c:0026 p:0015 s:0139 E:000050 BLOCK  /code/test/mini_racer/lib/mini_racer.rb:222 [FINISH]
c:0025 p:---- s:0136 e:000135 CFUNC  :synchronize
c:0024 p:0071 s:0132 E:0007a8 METHOD /code/test/mini_racer/lib/mini_racer.rb:220
c:0023 p:0021 s:0125 e:000124 METHOD /code/test/mini_racer/test/mini_racer_test.rb:13
c:0022 p:0029 s:0120 e:000119 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:98
c:0021 p:0006 s:0117 e:000116 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:195
c:0020 p:0009 s:0112 e:000111 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:95
c:0019 p:0020 s:0109 e:000108 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:281
c:0018 p:0009 s:0104 e:000103 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:94
c:0017 p:0037 s:0101 e:000100 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:376
c:0016 p:0052 s:0093 E:000898 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:221
c:0015 p:0009 s:0086 E:0017f0 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:93
c:0014 p:0014 s:0082 e:000081 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:1042
c:0013 p:0032 s:0075 e:000073 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:350
c:0012 p:0014 s:0067 e:000066 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:337 [FINISH]
c:0011 p:---- s:0063 e:000062 CFUNC  :each
c:0010 p:0010 s:0059 e:000058 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:336
c:0009 p:0037 s:0056 e:000055 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:376
c:0008 p:0035 s:0048 E:0026e8 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:363
c:0007 p:0145 s:0041 E:0024f8 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:335
c:0006 p:0013 s:0032 e:000031 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:169 [FINISH]
c:0005 p:---- s:0028 e:000027 CFUNC  :map
c:0004 p:0046 s:0024 e:000023 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:169
c:0003 p:0180 s:0015 e:000014 METHOD /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:146
c:0002 p:0085 s:0008 E:0015c0 BLOCK  /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:73 [FINISH]
c:0001 p:0000 s:0003 E:001020 (none) [FINISH]

-- Ruby level backtrace information ----------------------------------------
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:73:in `block in autorun'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:146:in `run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:169:in `__run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:169:in `map'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:169:in `block in __run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:335:in `run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:363:in `with_info_handler'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:376:in `on_signal'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:336:in `block in run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:336:in `each'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:337:in `block (2 levels) in run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:350:in `run_one_method'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:1042:in `run_one_method'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:93:in `run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:221:in `with_info_handler'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:376:in `on_signal'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:94:in `block in run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb:281:in `time_it'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:95:in `block (2 levels) in run'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:195:in `capture_exceptions'
/usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb:98:in `block (3 levels) in run'
/code/test/mini_racer/test/mini_racer_test.rb:13:in `test_locale'
/code/test/mini_racer/lib/mini_racer.rb:220:in `eval'
/code/test/mini_racer/lib/mini_racer.rb:220:in `synchronize'
/code/test/mini_racer/lib/mini_racer.rb:222:in `block in eval'
/code/test/mini_racer/lib/mini_racer.rb:343:in `timeout'
/code/test/mini_racer/lib/mini_racer.rb:223:in `block (2 levels) in eval'
/code/test/mini_racer/lib/mini_racer.rb:223:in `eval_unsafe'

-- Machine register context ------------------------------------------------
 RIP: 0x00007f423b0745a2 RBP: 0x00007ffd089afc90 RSP: 0x00007ffd089afc30
 RAX: 0x0000000000000000 RBX: 0x000055750ffd1510 RCX: 0x0000000000000000
 RDX: 0x000055750f8e8760 RDI: 0x000055750ffd1510 RSI: 0x0000000000000000
  R8: 0x0000000000000000  R9: 0x00007f423c0cd220 R10: 0x0000000000000000
 R11: 0x00007f423b074580 R12: 0x0000000000000000 R13: 0x0000557510405938
 R14: 0x00007ffd089afd90 R15: 0x00007ffd089b00c0 EFL: 0x0000000000010287

-- C level backtrace information -------------------------------------------
/usr/local/lib/libruby.so.2.4(rb_vm_bugreport+0x50d) [0x7f423c5443ed]
/usr/local/lib/libruby.so.2.4(rb_bug_context+0xd8) [0x7f423c3de698]
/usr/local/lib/libruby.so.2.4(sigsegv+0x3e) [0x7f423c4c280e]
[0x7f423c32b730]
[0x7f423b0745a2]
[0x7f423b074eb7]
[0x7f423b37d12a]
[0x7f423b37f736]
[0x7f423b271531]
[0x7f423af8bff9]

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

* Loaded script: /usr/local/bundle/gems/rake-13.0.6/lib/rake/rake_test_loader.rb

* Loaded features:

    0 enumerator.so
    1 thread.rb
    2 rational.so
    3 complex.so
    4 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
    5 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
    6 /usr/local/lib/ruby/2.4.0/unicode_normalize.rb
    7 /usr/local/lib/ruby/2.4.0/x86_64-linux/rbconfig.rb
    8 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/compatibility.rb
    9 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/defaults.rb
   10 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/deprecate.rb
   11 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/errors.rb
   12 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/version.rb
   13 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/requirement.rb
   14 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/platform.rb
   15 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/basic_specification.rb
   16 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/stub_specification.rb
   17 /usr/local/lib/ruby/2.4.0/delegate.rb
   18 /usr/local/lib/ruby/2.4.0/uri/rfc2396_parser.rb
   19 /usr/local/lib/ruby/2.4.0/uri/rfc3986_parser.rb
   20 /usr/local/lib/ruby/2.4.0/uri/common.rb
   21 /usr/local/lib/ruby/2.4.0/uri/generic.rb
   22 /usr/local/lib/ruby/2.4.0/uri/ftp.rb
   23 /usr/local/lib/ruby/2.4.0/uri/http.rb
   24 /usr/local/lib/ruby/2.4.0/uri/https.rb
   25 /usr/local/lib/ruby/2.4.0/uri/ldap.rb
   26 /usr/local/lib/ruby/2.4.0/uri/ldaps.rb
   27 /usr/local/lib/ruby/2.4.0/uri/mailto.rb
   28 /usr/local/lib/ruby/2.4.0/uri.rb
   29 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/specification_policy.rb
   30 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/util/list.rb
   31 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
   32 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/specification.rb
   33 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/exceptions.rb
   34 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/util.rb
   35 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/bundler_version_finder.rb
   36 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/dependency.rb
   37 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_gem.rb
   38 /usr/local/lib/ruby/2.4.0/monitor.rb
   39 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb
   40 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_warn.rb
   41 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems.rb
   42 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/path_support.rb
   43 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/version.rb
   44 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/core_ext/name_error.rb
   45 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/levenshtein.rb
   46 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/jaro_winkler.rb
   47 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checker.rb
   48 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
   49 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
   50 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
   51 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
   52 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/null_checker.rb
   53 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/formatter.rb
   54 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean.rb
   55 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/version.rb
   56 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/compatibility_guard.rb
   57 /usr/local/lib/ruby/2.4.0/x86_64-linux/pathname.so
   58 /usr/local/lib/ruby/2.4.0/pathname.rb
   59 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/constants.rb
   60 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/text.rb
   61 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/user_interaction.rb
   62 /usr/local/lib/ruby/2.4.0/x86_64-linux/etc.so
   63 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/config_file.rb
   64 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/rubygems_integration.rb
   65 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/current_ruby.rb
   66 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/shared_helpers.rb
   67 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/fileutils/lib/fileutils.rb
   68 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendored_fileutils.rb
   69 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/errors.rb
   70 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/environment_preserver.rb
   71 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/plugin/api.rb
   72 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/plugin.rb
   73 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source/git.rb
   74 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source/installed.rb
   75 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source/specific_file.rb
   76 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source/local.rb
   77 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source/lock.rb
   78 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source/vendor.rb
   79 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/source.rb
   80 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/gem_helpers.rb
   81 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/match_platform.rb
   82 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/rubygems_ext.rb
   83 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/build_metadata.rb
   84 /usr/local/lib/ruby/site_ruby/2.4.0/bundler.rb
   85 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/settings.rb
   86 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/ext/builder.rb
   87 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/feature_flag.rb
   88 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source.rb
   89 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source/path.rb
   90 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source/git.rb
   91 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source/rubygems.rb
   92 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/lockfile_parser.rb
   93 /usr/local/lib/ruby/2.4.0/set.rb
   94 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/definition.rb
   95 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/dependency.rb
   96 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/ruby_dsl.rb
   97 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/dsl.rb
   98 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source_list.rb
   99 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source/metadata.rb
  100 /code/test/mini_racer/lib/mini_racer/version.rb
  101 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/index.rb
  102 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/source/gemspec.rb
  103 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/lazy_specification.rb
  104 /usr/local/lib/ruby/2.4.0/tsort.rb
  105 /usr/local/lib/ruby/2.4.0/forwardable/impl.rb
  106 /usr/local/lib/ruby/2.4.0/forwardable.rb
  107 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/spec_set.rb
  108 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/ui.rb
  109 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/ui/silent.rb
  110 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/ui/rg_proxy.rb
  111 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/util/licenses.rb
  112 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/remote_specification.rb
  113 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/compatibility.rb
  114 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb
  115 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
  116 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/errors.rb
  117 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
  118 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb
  119 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb
  120 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb
  121 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb
  122 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb
  123 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb
  124 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb
  125 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb
  126 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb
  127 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/state.rb
  128 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb
  129 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
  130 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/resolution.rb
  131 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/resolver.rb
  132 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb
  133 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendor/molinillo/lib/molinillo.rb
  134 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/vendored_molinillo.rb
  135 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/resolver/spec_group.rb
  136 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/resolver.rb
  137 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/runtime.rb
  138 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/dep_proxy.rb
  139 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/stub_specification.rb
  140 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/endpoint_specification.rb
  141 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/ruby_version.rb
  142 /usr/local/lib/ruby/site_ruby/2.4.0/bundler/setup.rb
  143 /usr/local/bundle/gems/rake-13.0.6/lib/rake/cloneable.rb
  144 /usr/local/lib/ruby/2.4.0/fileutils.rb
  145 /usr/local/bundle/gems/rake-13.0.6/lib/rake/file_utils.rb
  146 /usr/local/bundle/gems/rake-13.0.6/lib/rake/file_utils_ext.rb
  147 /usr/local/bundle/gems/rake-13.0.6/lib/rake/ext/core.rb
  148 /usr/local/bundle/gems/rake-13.0.6/lib/rake/ext/string.rb
  149 /usr/local/bundle/gems/rake-13.0.6/lib/rake/file_list.rb
  150 /code/test/mini_racer/lib/mini_racer_loader.so
  151 /usr/local/lib/ruby/2.4.0/json/version.rb
  152 /usr/local/lib/ruby/2.4.0/ostruct.rb
  153 /usr/local/lib/ruby/2.4.0/json/generic_object.rb
  154 /usr/local/lib/ruby/2.4.0/json/common.rb
  155 /usr/local/lib/ruby/2.4.0/x86_64-linux/json/ext/parser.so
  156 /usr/local/lib/ruby/2.4.0/x86_64-linux/json/ext/generator.so
  157 /usr/local/lib/ruby/2.4.0/json/ext.rb
  158 /usr/local/lib/ruby/2.4.0/json.rb
  159 /code/test/mini_racer/lib/mini_racer.rb
  160 /usr/local/lib/ruby/2.4.0/optparse.rb
  161 /usr/local/lib/ruby/2.4.0/mutex_m.rb
  162 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/parallel.rb
  163 /usr/local/lib/ruby/2.4.0/tmpdir.rb
  164 /usr/local/lib/ruby/2.4.0/tempfile.rb
  165 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/assertions.rb
  166 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/unit.rb
  167 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/test.rb
  168 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest.rb
  169 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/pride_plugin.rb
  170 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/pride.rb
  171 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/expectations.rb
  172 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/spec.rb
  173 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/mock.rb
  174 /usr/local/bundle/gems/minitest-5.15.0/lib/minitest/autorun.rb
  175 /code/test/mini_racer/test/test_helper.rb
  176 /usr/local/lib/ruby/2.4.0/timeout.rb
  177 /code/test/mini_racer/test/function_test.rb
  178 /usr/local/lib/ruby/2.4.0/x86_64-linux/digest.so
  179 /usr/local/lib/ruby/2.4.0/digest.rb
  180 /usr/local/lib/ruby/2.4.0/x86_64-linux/openssl.so
  181 /usr/local/lib/ruby/2.4.0/openssl/bn.rb
  182 /usr/local/lib/ruby/2.4.0/openssl/pkey.rb
  183 /usr/local/lib/ruby/2.4.0/openssl/cipher.rb
  184 /usr/local/lib/ruby/2.4.0/openssl/config.rb
  185 /usr/local/lib/ruby/2.4.0/openssl/digest.rb
  186 /usr/local/lib/ruby/2.4.0/openssl/x509.rb
  187 /usr/local/lib/ruby/2.4.0/openssl/buffering.rb
  188 /usr/local/lib/ruby/2.4.0/x86_64-linux/io/nonblock.so
  189 /usr/local/lib/ruby/2.4.0/openssl/ssl.rb
  190 /usr/local/lib/ruby/2.4.0/openssl.rb
  191 /usr/local/lib/ruby/2.4.0/securerandom.rb
  192 /usr/local/lib/ruby/2.4.0/x86_64-linux/date_core.so
  193 /usr/local/lib/ruby/2.4.0/date.rb
  194 /code/test/mini_racer/test/mini_racer_test.rb
lloeki commented 2 years ago

Well... this seems to affect node 16.17.0 too. So either:

Just to be thorough, also fails when building with clang on Linux.

SamSaffron commented 2 years ago

Is this caused due to compile time or runtime? can we compile in en mode and only do local stuff at runtime?

lloeki commented 2 years ago

I have absolutely no idea. I have a baseless gut feeling there's some string handling problem or something. I'll try to:

That could help pinpointing whether it's a libv8 || node change or a mini_racer change.

seanmakesgames commented 1 year ago

Note to people watching these issues & PRs-- We are trying to release new versions and would love your help testing for stability in your products. Here's the main issue thread where we are tracking this: https://github.com/rubyjs/mini_racer/issues/277

Please let us know the results of your tests in our branches so we can do the actual releases on those branches with confidence.

tisba commented 1 year ago

With 0.8.0 released, I'm going ahead and close this one.