Feature #43650
closedRuby 4.0 support
Description
Files
Related issues
Updated by Mizuki ISHIKAWA 4 months ago
- File 0001-Add-Ruby-4.0-to-supported-Ruby-versions.patch 0001-Add-Ruby-4.0-to-supported-Ruby-versions.patch added
I’m attaching a patch to make Ruby 4.0 available in Redmine.
- Since
ostructis no longer a default gem, I added it to the Gemfile. https://www.ruby-lang.org/en/news/2025/12/25/ruby-4-0-0-released/#stdlib-updates - I confirmed that the Ruby 4.0 compatible test suite passes on GitHub Actions. (CI run on my fork: https://github.com/ishikawa999/redmine/actions/runs/21240857495)
- I tried running Redmine on Ruby 4.0 and did a quick check.
Updated by Go MAEDA 4 months ago
- Status changed from Closed to Reopened
Marius BĂLTEANU wrote in #note-6:
I'm wondering if it's safe to merge this into 6.1.2 considering there are no breaking changes added by this update? Or how we can ship this faster without releasing 7.0.0 that needs more time to finish the work.
I agree that it is safe to merge this into the 6.0-stable branch.
Traditionally, Redmine has supported newer Ruby versions only with major releases. However, in cases like this—where the new Ruby version requires no code changes or only minimal ones—I think it is reasonable to support it in a minor release.
Updated by Go MAEDA 4 months ago
- Target version changed from 6.1.2 to 7.0.0
After upgrading Ruby to 4.0.1 in the Redmine instance in our company, we observed a significant slowdown in CommonMark Markdown rendering. The root cause is still unknown, but our current investigation strongly suggests that the upgrade from Ruby 3.4 to 4.0.1 is responsible.
Therefore, I believe that changes for Ruby 4.0 support should not be merged into the 6.1-stable branch at least until this issue is resolved.
Updated by Pavel Rosický 4 months ago
could it be https://bugs.ruby-lang.org/issues/21824 ?
Updated by Katsuya HIDAKA 4 months ago
I submitted #43737 about a slowdown in wiki rendering on Ruby 4.0.1.
Updated by Holger Just 4 months ago
- Related to Defect #43737: Rendering wiki is significantly slow on Ruby 4.0.1 added
Updated by Marius BĂLTEANU 12 days ago
Go MAEDA, should we pin Ruby to 4.0.3 or 4.0.4?
Updated by Go MAEDA 11 days ago
Marius BĂLTEANU wrote in #note-13:
Go MAEDA, should we pin Ruby to 4.0.3 or 4.0.4?
I think it is sufficient to mention in doc/INSTALL that Ruby 4.0.0 through 4.0.3 have performance issues, and I do not think we should reject these versions in the Gemfile. The reasons are as follows.
- No officially released version of Redmine supports Ruby 4.0 yet. Even after a Ruby 4.0-compatible version of Redmine is released, most users will likely use the latest Ruby 4.0 release, which is currently Ruby 4.0.5. Therefore, it is unlikely that many users will run Redmine with the Ruby 4.0.0 through 4.0.3 versions with performance issues.
- If we reject specific Ruby 4.0 versions in the Gemfile, users who are already running trunk Redmine on Ruby 4.0 may suddenly become unable to start Redmine after running
svn up. - It would make the Ruby version requirements in the Gemfile more complicated.
- If similar issues are found in future Ruby versions, we would need to keep adding more reject conditions to the Gemfile.