truffleruby
truffleruby copied to clipboard
A high performance implementation of the Ruby programming language, built on GraalVM.
Attempt to address https://github.com/oracle/truffleruby/issues/2931. This expands the specialisations for InjectNode to accept strings in place of symbols. Local test: ``` ➜ truffleruby git:(master) ✗ jt ruby -e "p [2,3].inject('*')" $...
Currently we have a custom version in https://github.com/oracle/truffleruby/blob/90bfaa00401778f11849dbca05eb1bd008271c1b/lib/truffle/timeout.rb. But now that upstream (the gem, and also the version [shipped in 3.2](https://github.com/ruby/ruby/blob/ruby_3_2/lib/timeout.rb)) also avoids creating a thread per Timeout.timeout call, there...
From https://github.com/ruby/prism/pull/2264#issuecomment-1908829272 ``` $ ruby -e 'p :🌊' CRuby :🌊 TruffleRuby :"🌊" ``` Once fixed we should be able to remove these excludes: https://github.com/ruby/prism/pull/2264/files#diff-160859519e6d8d817511d99ddad0f95f7d1be541ab25a6d4877ef3c7d8f8ee41
Noticed by @fniephaus in https://github.com/graalvm/setup-graalvm/actions/runs/5289231919/jobs/9571920888?pr=46#step:6:363 Stacktrace: ``` Caused by: (java.lang.NullPointerException) from org.truffleruby.core.hash.library.PackedHashStoreLibrary.getHashed(PackedHashStoreLibrary.java:75) from org.truffleruby.core.hash.library.PackedHashStoreLibrary$LookupPackedEntryNode.getPackedArray(PackedHashStoreLibrary.java:459) from org.truffleruby.core.hash.library.PackedHashStoreLibraryFactory$LookupPackedEntryNodeGen.execute(PackedHashStoreLibraryFactory.java:102) from org.truffleruby.core.hash.library.PackedHashStoreLibrary.lookupOrDefault(PackedHashStoreLibrary.java:165) from org.truffleruby.core.hash.library.PackedHashStoreLibraryGen$HashStoreLibraryExports$Cached.lookupOrDefault(PackedHashStoreLibraryGen.java:458) from org.truffleruby.core.hash.HashNodes$GetIndexNode.get(HashNodes.java:205) from org.truffleruby.core.hash.HashNodesFactory$GetIndexNodeFactory$GetIndexNodeGen.execute(HashNodesFactory.java:708) from org.truffleruby.language.RubyCoreMethodRootNode.execute(RubyCoreMethodRootNode.java:58) /opt/hostedtoolcache/graalvm-jdk-17_linux-x64_bin/17.0.0/x64/graalvm-jdk-17.0.7+8.1/languages/ruby/lib/mri/rubygems/specification.rb:845:in `[]' from /opt/hostedtoolcache/graalvm-jdk-17_linux-x64_bin/17.0.0/x64/graalvm-jdk-17.0.7+8.1/languages/ruby/lib/mri/rubygems/specification.rb:845:in...
I noticed that `Regexp.new(...)` raises a slightly different `RegexpError` exception message when it cannot parse the regular expression. This causes certain tests that check the exception message to fail when...
Using the latest commit and a `jvm-ce` build ``` truffleruby 24.1.0-dev-00307c24, like ruby 3.2.2, GraalVM CE JVM [x86_64-linux] ``` with the latest gem version (1.0.4) installation fails due to several...
From https://github.com/ruby/zlib/pull/75 Affects: TruffleRuby >= 24.0 There is a bug in XCode 14.2 that even though TruffleRuby passes RTLD_LAZY to dlopen() and `-Wl,-undefined,dynamic_lookup` when linking, the new linker in XCode...
The failure: ``` Failure: test_cloned_items_stay_frozen(TestRakeFileList) /Users/andrykonchin/projects/truffleruby-gems-to-test/rake/test/test_rake_file_list.rb:523:in `test_cloned_items_stay_frozen' 520: a.freeze 521: c = a.clone 522: error_class = defined?(FrozenError) ? FrozenError : RuntimeError => 523: assert_raises(error_class) do 524: c
I'm looking to add the ability to build TruffleRuby from source with a custom _ruby-build_ definition. To make that simpler, I've added a new `--install` option to `jt build`. Normally,...
This commit implements the rb_frame_method_and_id internal API, that is needed by the rice gem. The corresponding changeset represents a first but hopefully significant step to get the torch.rb gem working...