Ruby3
This PR (and its matching PR on https://github.com/refinery/refinerycms-i18n ) allow refinerycms to run with Ruby 3.
It has been tested with Ruby 3.1.2 and Rails 6.1.6.1 Will shortly be tested on Rails 7.
One test failure on /resources, which I haven't been able to fathom.
Tests failing:
I have seen some of these errors during testing, but thought I was past them. Many seem to be timeouts, and then the reporting of timeouts seems to be a problem too.
There are many variations of:
1.1) Failure/Error: **visit refinery.admin_images_path**
RuntimeError:
Rack application timed out during boot
# ./core/spec/system/refinery/admin/xhr_paging_spec.rb:19:in `block (3 levels) in <module:Refinery>'
and I saw some other reporting of timeouts on visit, as a result of changes to bundler, I think.
Also frequently seen (below), which seems to be an error reporting timeouts. It occurs every minute during a run.
{"time":"2022-07-18T05:05:32+00:00",
"severity":"warn",
"class":"Async::Task",
"oid":130980,
"pid":2890,
"subject":
"#<Async::Task:0x000000000001ffa4 /home/runner/work/refinerycms/refinerycms/vendor/bundle/ruby/3.1.0/gems/async-2.0.3/lib/async/task.rb:82:in
`backtrace' (failed)>",
"message":[
"Task may have ended with unhandled exception.",
"undefined method `logger' for Async:Module
Async.logger.debug (self) {\"Running server...\"}
^^^^^^^"
],
"error":{
"kind":"NoMethodError",
"message":"undefined method `logger' for Async:Module
Async.logger.debug (self) {\"Running server...\"}
^^^^^^^",
"stack":
"/home/runner/work/refinerycms/refinerycms/vendor/bundle/ruby/3.1.0/gems/falcon-capybara-1.5.1/lib/falcon/capybara/wrapper.rb:61:in `block in call'
/home/runner/work/refinerycms/refinerycms/vendor/bundle/ruby/3.1.0/gems/async-2.0.3/lib/async/task.rb:255:in `block in schedule'
"}
}
Thank you for looking at this
Is there any update on the status of this PR? I need to upgrade to ruby 3.2.1 and rails 6.x because I need to upgrade to the newest cflinux4 buildpack and no previous versions of ruby are supported. I currently use refinerycms with ruby 2.5.5 and rails 5.x.
I think this merge will help me upgrade to the versions of ruby and rails mentioned above. Thank you.
@pdornfel I'd really love to merge this but CI isn't happy. The corresponding PR for refinerycms-i18n is failing on Ruby 3.0 and 3.2, but not 3.1 🤔 https://github.com/refinery/refinerycms-i18n/pull/104
Any help you or anyone else can lend with figuring out why this is happening would be greatly appreciated. Right now, I suspect the routing-filter gem we use.