Project

General

Profile

Actions

Feature #38585

closed

Drop Ruby 2.7 support

Added by C S 10 months ago. Updated about 2 months ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Ruby support
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Resolution:
Fixed

Description

Ruby 2.7 is EOL (https://www.ruby-lang.org/en/downloads/branches/)
Since Redmine 4.2 supports Ruby 2.7 at most, this should also be set to EOL...

Actions #1

Updated by Milly texas 10 months ago

Dropping Ruby 2.7 support and setting Redmine 4.2 as EOL allows for focusing on newer technologies and ensuring compatibility with the latest Ruby versions.

Actions #2

Updated by Go MAEDA about 2 months ago

  • Subject changed from Drop Ruby 2.7 support and set Redmine 4.2 as EOL to Drop Ruby 2.7 support
  • Category set to Ruby support

Support for Redmine 4.2 will end when the next major version (probably Redmine 6.0) is released.

Actions #3

Updated by Go MAEDA about 2 months ago

  • Target version set to 6.0.0

Some Gems such as Nokogiri and SQLite have already discontinued support for Ruby 2.7.

I think it is fine to end support for Ruby 2.7 in Redmine 6.0.

Actions #4

Updated by Marius BÄ‚LTEANU about 2 months ago

I totally agree.

Actions #5

Updated by Go MAEDA about 2 months ago

  • Status changed from New to Resolved

Dropped Ruby 2.7 support in r22648.

I will set the TargetRailsVersion of RuboCop to 3.0 after fixing some RuboCop offenses regarding the update to Ruby 3.0.

Actions #6

Updated by Go MAEDA about 2 months ago

  • Status changed from Resolved to Closed
  • Assignee set to Go MAEDA
  • Resolution set to Fixed

I set TargetRubyVersion of RuboCop to 3.0 in r22654 after fixing the following offenses.

config/initializers/00-core_plugins.rb:4:44: W: [Correctable] Lint/RedundantDirGlobSort: Remove redundant sort.
Dir.glob(Rails.root.join('lib/plugins/*')).sort.each do |directory|
                                           ^^^^
create_test_members.rb:1:1: C: [Correctable] Style/FrozenStringLiteralComment: Missing frozen string literal comment.
projects = Project.where(id: [1])
^
lib/redmine/plugin_loader.rb:70:43: W: [Correctable] Lint/RedundantDirGlobSort: Remove redundant sort.
      Dir.glob(File.join(directory, '*')).sort.each do |directory|
                                          ^^^^
lib/redmine/wiki_formatting/common_mark/fixup_auto_links_filter.rb:30:28: C: [Correctable] Style/RedundantFreeze: Do not freeze immutable objects, as freezing them has no effect.
        USER_LINK_PREFIX = /(@|user:)\z/.freeze
                           ^^^^^^^^^^^^^^^^^^^^
lib/redmine/wiki_formatting/common_mark/fixup_auto_links_filter.rb:31:23: C: [Correctable] Style/RedundantFreeze: Do not freeze immutable objects, as freezing them has no effect.
        HIRES_IMAGE = /.+@\dx\.(bmp|gif|jpg|jpe|jpeg|png)\z/.freeze
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
test/test_helper.rb:255:30: C: [Correctable] Style/ArgumentsForwarding: Use shorthand syntax ... for arguments forwarding.
  def assert_select_in(text, *args, &block)
                             ^^^^^^^^^^^^^
test/test_helper.rb:257:22: C: [Correctable] Style/ArgumentsForwarding: Use shorthand syntax ... for arguments forwarding.
    assert_select(d, *args, &block)
                     ^^^^^^^^^^^^^
test/test_helper.rb:260:27: C: [Correctable] Style/ArgumentsForwarding: Use shorthand syntax ... for arguments forwarding.
  def assert_select_email(*args, &block)
                          ^^^^^^^^^^^^^
test/test_helper.rb:265:41: C: [Correctable] Style/ArgumentsForwarding: Use shorthand syntax ... for arguments forwarding.
    assert_select_in html_body.encoded, *args, &block
                                        ^^^^^^^^^^^^^
test/unit/lib/redmine/unified_diff_test.rb:403:40: F: Lint/Syntax: invalid escape character syntax
(Using Ruby 3.0 parser; configure using TargetRubyVersion parameter, under AllCops)
       $ hg commit -m `echo -e "U+1F603\U1F603"` -u `echo -e "U+1F603\U1F603"`
                                       ^
Actions

Also available in: Atom PDF