truffleruby
truffleruby copied to clipboard
Rake tests fail on TruffleRuby head
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 << "more"
525: end
526: end
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
<FrozenError> expected but was
<SystemStackError(<stack level too deep
from com.oracle.svm.core.graal.snippets.StackOverflowCheckImpl.newStackOverflowError0(StackOverflowCheckImpl.java:348)>)
<internal:core> core/type.rb:543:in `rb_inspect'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:210:in `resolve'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:78:in `inspect'
<internal:core> core/type.rb:544:in `rb_inspect'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:210:in `resolve'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:78:in `inspect'
<internal:core> core/type.rb:544:in `rb_inspect'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:210:in `resolve'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:78:in `inspect'
<internal:core> core/type.rb:544:in `rb_inspect'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:210:in `resolve'
/Users/andrykonchin/projects/truffleruby-gems-to-test/rake/lib/rake/file_list.rb:78:in `inspect'
Steps to reproduce:
bin/setup
rake
This happens because a custom inspect is modifying the object and FrozenError tries to inspect the receiver.
Rake tests pass successfully on TruffleRuby 24.0 and master as well:
Run ruby -Ilib exe/rake
/home/runner/.rubies/truffleruby-2[4](https://github.com/ruby/rake/actions/runs/10139944081/job/28034174544#step:5:5).0.2/bin/truffleruby -w -I"lib:test" /home/runner/work/rake/rake/lib/rake/rake_test_loader.rb "test/test_private_reader.rb" "test/test_rake.rb" "test/test_rake_application.rb" "test/test_rake_application_options.rb" "test/test_rake_backtrace.rb" "test/test_rake_clean.rb" "test/test_rake_cpu_counter.rb" "test/test_rake_definitions.rb" "test/test_rake_directory_task.rb" "test/test_rake_dsl.rb" "test/test_rake_early_time.rb" "test/test_rake_extension.rb" "test/test_rake_file_creation_task.rb" "test/test_rake_file_list.rb" "test/test_rake_file_list_path_map.rb" "test/test_rake_file_task.rb" "test/test_rake_file_utils.rb" "test/test_rake_functional.rb" "test/test_rake_invocation_chain.rb" "test/test_rake_late_time.rb" "test/test_rake_linked_list.rb" "test/test_rake_makefile_loader.rb" "test/test_rake_multi_task.rb" "test/test_rake_name_space.rb" "test/test_rake_package_task.rb" "test/test_rake_path_map.rb" "test/test_rake_path_map_explode.rb" "test/test_rake_path_map_partial.rb" "test/test_rake_pseudo_status.rb" "test/test_rake_rake_test_loader.rb" "test/test_rake_reduce_compat.rb" "test/test_rake_require.rb" "test/test_rake_rules.rb" "test/test_rake_scope.rb" "test/test_rake_task.rb" "test/test_rake_task_argument_parsing.rb" "test/test_rake_task_arguments.rb" "test/test_rake_task_manager.rb" "test/test_rake_task_manager_argument_resolution.rb" "test/test_rake_task_with_arguments.rb" "test/test_rake_test_task.rb" "test/test_rake_thread_pool.rb" "test/test_rake_top_level_functions.rb" "test/test_rake_win32.rb" "test/test_thread_history_display.rb" "test/test_trace_output.rb"
Finished in 37.650993 seconds.
597 tests, 14[5](https://github.com/ruby/rake/actions/runs/10139944081/job/28034174544#step:5:6)8 assertions, 0 failures, 0 errors, 0 pendings, 1 omissions, 0 notifications
https://github.com/ruby/rake/actions/runs/10139944081/job/28034174544