https://www.redmine.org/https://www.redmine.org/favicon.ico?16793021292017-04-06T19:54:11ZRedmineRedmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778292017-04-06T19:54:11ZToshi MARUYAMA
<ul><li><strong>Blocks</strong> <i><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" href="/issues/24271">Defect #24271</a>: htmlentities warning</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778332017-04-06T19:55:59ZToshi MARUYAMA
<ul><li><strong>Blocks</strong> <i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/22335">Defect #22335</a>: Images with non-ASCII file names are not shown in PDF</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778352017-04-06T19:56:59ZToshi MARUYAMA
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/77835/diff?detail_id=61034">diff</a>)</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778382017-04-07T00:56:39ZGo MAEDA
<ul></ul><p>+1</p>
<ul>
<li>Ruby 2.1 and earlier should no longer be used. ( <a class="external" href="https://www.ruby-lang.org/en/news/2017/04/01/support-of-ruby-2-1-has-ended/">https://www.ruby-lang.org/en/news/2017/04/01/support-of-ruby-2-1-has-ended/</a> )</li>
<li>Supporting ancient versions of Ruby is big burden for plugin developers.</li>
</ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778432017-04-07T08:31:28ZGo MAEDA
<ul><li><strong>File</strong> <a href="/attachments/18065">0001-Dropped-Ruby-2.1-and-earlier-support.patch</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/18065/0001-Dropped-Ruby-2.1-and-earlier-support.patch">0001-Dropped-Ruby-2.1-and-earlier-support.patch</a> added</li></ul><p>This is a patch to drop ruby 2.1 and earlier support by removing RUBY_VERSION condition expressions.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778462017-04-07T11:49:14ZFernando Hartmann
<ul></ul><p>Hi, this will block my upgrade to <a class="version" href="https://www.redmine.org/versions/119">3.4.0</a> in my <a href="http://packages.ubuntu.com/trusty/ruby" class="external">Ubuntu 14.04 LTS</a> and <a href="https://software.opensuse.org/package/ruby?search_term=%22ruby%22" class="external">OpenSuSE 42.2</a># and probably other distros.</p>
<p>Shouldn't this be put in <a class="version" href="https://www.redmine.org/versions/99">4.0.0</a> like <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Migrate to Rails 5.2 (Closed)" href="https://www.redmine.org/issues/23630">#23630</a> and <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Drop protected_attributes gem (Closed)" href="https://www.redmine.org/issues/19755">#19755</a> ? <br />Given some more time to users to plan system upgrades ?</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778472017-04-07T12:33:25ZHolger Just
<ul></ul><p>I agree, dropping support for Ruby versions should probably be done in a major version instead.</p>
<p>That said, dropping Ruby 1.9.3 support is probably a good idea in the short-to-middle term since it is seriously old and not supported by the Ruby language team for quite some time. For other versions, I'd be actually more careful.</p>
<ul>
<li>Ubuntu 14.04 LTS defaults to Ruby 1.9.3, but also ships with <a href="http://packages.ubuntu.com/trusty/ruby2.0" class="external">Ruby 2.0</a>. Ubuntu 16.04 LTS ships with <a href="http://packages.ubuntu.com/xenial/ruby" class="external">Ruby 2.3</a> by default.</li>
<li>Debian stable (Jessie) currently ships with <a href="https://packages.debian.org/jessie/ruby" class="external">Ruby 2.1</a>. The next stable (which is just around the corner) will ship with <a href="https://packages.debian.org/stretch/ruby" class="external">Ruby 2.3</a></li>
<li>RHEL/CentOS 7 ships with Ruby 2.0 currently, RHEL/CentOS 6 still ships Ruby 1.8.7.</li>
<li>OpenSuSE 42 ships with Ruby 2.1</li>
</ul>
<p>Given this landscape, in order to provide the broadest possible support for existing users, I'd propose to only drop Ruby 1.9.3 support in the short term (if at all, see below). I understand that is is desirable to also drop at least Ruby 2.0 but this would seriously inconvenience many people who have to use older Ruby versions from their upstream vendors. Thus, I'd propose to only follow this approach now if the gain of not supporting older Ruby 2.x versions is actually significant.</p>
<p>In general, I think that the removal of supported Ruby versions should be done in a major version bump only. With the release of Redmine 4, I'd be quite happy if only Ruby >= 2.2 would be supported. Given that Rails 5 requires Ruby >= 2.2.2 anyway, this is probably a given requirement. Until then, I'd propose we still support the existing Ruby versions in all existing and future 3.x-stable branches.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778702017-04-08T07:35:03ZJean-Philippe Langjp_lang@yahoo.fr
<ul><li><strong>Target version</strong> deleted (<del><i>3.4.0</i></del>)</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778752017-04-08T07:51:21ZToshi MARUYAMA
<ul><li><strong>Blocks</strong> deleted (<i><a class="issue tracker-1 status-5 priority-3 priority-lowest closed" href="/issues/24271">Defect #24271</a>: htmlentities warning</i>)</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778772017-04-08T07:51:24ZToshi MARUYAMA
<ul><li><strong>Blocks</strong> deleted (<i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/22335">Defect #22335</a>: Images with non-ASCII file names are not shown in PDF</i>)</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=778902017-04-09T03:31:53ZGo MAEDA
<ul><li><strong>Subject</strong> changed from <i>Drop support Ruby 1.9.3 and 2.0</i> to <i>Drop support Ruby 2.2.1 and ealier</i></li><li><strong>Target version</strong> set to <i>4.0.0</i></li></ul><p>Rails 5 requires Ruby 2.2.2 or newer.<br /><a class="external" href="http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#ruby-versions">http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#ruby-versions</a></p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=784992017-05-12T02:38:08ZGo MAEDA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/25807">Feature #25807</a>: Upgrade to roadie-rails 1.2</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=790312017-06-06T06:31:43ZGo MAEDA
<ul></ul><p>We can unpin test_after_commit gem 0.4 if Ruby 1.9.3 support is dropped (<a class="issue tracker-1 status-5 priority-6 priority-highest closed" title="Defect: Mass-deleted attachments are not represented correctly in email notifications (Closed)" href="https://www.redmine.org/issues/25794">#25794</a>, <a class="changeset" title="Gemfile: pin test_after_commit version 0.4 (#25794) test_after_commit >= 0.5 requires Ruby >= 2.0.0" href="https://www.redmine.org/projects/redmine/repository/svn/revisions/16582">r16582</a>).</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=790322017-06-06T06:31:52ZGo MAEDA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-5 priority-6 priority-highest closed" href="/issues/25794">Defect #25794</a>: Mass-deleted attachments are not represented correctly in email notifications</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793032017-06-19T06:25:33ZToshi MARUYAMA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/26183">Defect #26183</a>: Use Nokogiri 1.7.2</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793052017-06-19T06:26:32ZToshi MARUYAMA
<ul></ul><p><a class="external" href="https://github.com/sparklemotion/nokogiri/pull/1640#issuecomment-301805320">https://github.com/sparklemotion/nokogiri/pull/1640#issuecomment-301805320</a></p>
<blockquote>
<p>The 1.6.8.x release isn't supported anymore, and we're encouraging teams to upgrade to get security patches.</p>
</blockquote> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793132017-06-19T11:21:47ZToshi MARUYAMA
<ul><li><strong>Target version</strong> changed from <i>4.0.0</i> to <i>3.4.0</i></li></ul><p>Nokogiri team refused to maintain old release for old Ruby.<br /><a class="external" href="https://github.com/sparklemotion/nokogiri/pull/1640#issuecomment-309409944">https://github.com/sparklemotion/nokogiri/pull/1640#issuecomment-309409944</a></p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793182017-06-19T13:14:40ZHolger Just
<ul></ul><p>As a concrete motion from my side:</p>
<ul>
<li>I think it's a god idea to require at least Ruby 2.2.2 (or whatever Rails depends on at this time) from Redmine 4 on.</li>
<li>Removing support for 1.9.3 <em>could</em> be sensible in Redmine 3.4 if that aligns with the the way Redmine want's to support Rubies in general. Ruby 1.9.3 is not maintained by the upstream Ruby for quite some time now and no halfway modern OS ships with Ruby 1.9.3 anymore.</li>
<li>I don't think it is a good idea to remove support for Ruby 2.0 in Redmine 3.4 as this would alienate many RHEL / CentOS users. I would be fine with showing a deprecation warning in Redmine 3.4 for anything <= Ruby 2.1 though. Redmine should still work as far as possible even on Ruby 2.0.</li>
</ul>
<p>In general, I think it is worth it to define how Redmine plans to handle support to external dependencies like Ruby, Rails or nokogiri (e.g. with <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Defect: Use Nokogiri 1.7.2 (Closed)" href="https://www.redmine.org/issues/26183">#26183</a>) in general. If there is a commitment from the Redmine project to ensure that all dependencies are ensured to be secure, the Redmine project probably has to follow the support cycles of these dependencies too. That would mean to regularly issue patch releases with updated dependencies and to either EOL Redmine versions depending on not supported dependencies or provide monkey patches for them. This issue of how we define our policy was also discussed in <a class="external" href="https://github.com/rails/rails/pull/27814">https://github.com/rails/rails/pull/27814</a>.</p>
<p>Policy wise, I think this would significantly increase the burden on the project for too little gain. I think we could follow our current best-effort way to provide updates while still striving to be as compatible as possible to a wide version range of external dependencies. As for Ruby compatibility, Redmine has historically attempted to follow the requirements of its respective Rails version. This has allowed Redmine to be used on a wide array of configurations and systems.</p>
<p>Even more so: at Planio we often notice that many Redmine installation are not (or only very seldom) updated. Making it harder to update Redmine by introducing stricter environment dependencies (like a Ruby version) could likely result on even poorer update rates which effectively has a negative effect on overall security (Yes, this is a hard problem!)</p>
<p>Still, it is probably a good idea to nudge users in the direction of a preferred Ruby version and updated dependencies if possible. That way, people with specific requirements can still use other versions but the general population is still nudged into the sweet spot. Hard dependency updates <em>of the environment</em> should however be limited to major version updates if at all possible. This also helps packagers who maintain e.g. the <a href="https://packages.debian.org/jessie/redmine" class="external">redmine package in Debian</a> (and by extension Ubuntu).</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793402017-06-20T09:49:24ZGo MAEDA
<ul></ul><p>+1 for Holger Just.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793432017-06-20T12:22:56ZFernando Hartmann
<ul></ul><p>Go MAEDA wrote:</p>
<blockquote>
<p>+1 for Holger Just.</p>
</blockquote>
<p>I agree.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793472017-06-20T19:40:08ZVasili Korol
<ul></ul><p>Debian 8, CentOS 6 and Ubuntu 14.04 have Ruby 1.9.3 installed by default (although ruby 2.* is also available from the repos). These operating systems are installed on a lot of servers. Switching to ruby2 as default is not always possible there.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=793482017-06-20T22:15:47ZHolger Just
<ul></ul><p>Vasili Korol wrote:</p>
<blockquote>
<p>Debian 8, CentOS 6 and Ubuntu 14.04 have Ruby 1.9.3 installed by default (although ruby 2.* is also available from the repos). These operating systems are installed on a lot of servers. Switching to ruby2 as default is not always possible there.</p>
</blockquote>
<ul>
<li>Debian 8 (Jessie) uses Ruby 2,1 by default, Debian Stretch (just released) uses 2.3. Only Debian 7 (Wheezy aka. oldoldstable) used Ruby 1.9.3</li>
<li>While Ubuntu 14.04 (Trusty) installs Ruby 1.9.3 by default, you can install <code>ruby2.0</code> alongside with it.</li>
<li>I personally don't care about CentOS/RHEL 6 anymore. It was released 6 years ago and about everything on there is heavily outdated. CentOS 7 is available since three years.</li>
</ul>
<p>By continuing to support such extremely old (and mostly unmaintained) software, we would enter a world of pain and would continuously force us to not use any of new features available in later versions and work with older (often also unsupported) versions of gems. If users want to continue using outdated base systems, they can always install a custom Ruby with RVM, ruby-install or rbenv/ruby-build when upgrading Redmine.</p>
<p>Again, support for external dependencies (most importantly Ruby, but also other gems) is always a tradeoff between the required effort for the maintenance and compatibility with existing systems. Redmine currently supports a lot of even very old systems which is increasingly becoming painful. Cutting support for the most outdated systems first in a controlled manner helps (in lieu of saying: is required) for the Redmine project to be able to continuously maintain and modernize its codebase. Cutting support for old dependencies with newer releases is a standard practice followed by about any software package.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=794412017-06-25T08:57:26ZJean-Philippe Langjp_lang@yahoo.fr
<ul><li><strong>Target version</strong> changed from <i>3.4.0</i> to <i>4.0.0</i></li></ul><p>3.4 is almost ready for release and we have a code base that support older ruby versions. Current trunk will be upgraded to Rails 5.1 soon and support for ruby < 2.2.1 will be dropped.</p> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=796562017-07-03T07:49:39ZGo MAEDA
<ul><li><strong>Category</strong> set to <i>Ruby support</i></li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=797102017-07-04T01:45:18ZGo MAEDA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/26334">Feature #26334</a>: Update Redmine gems to latest stable versions</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=797132017-07-04T03:41:54ZToshi MARUYAMA
<ul><li><strong>Related to</strong> deleted (<i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/26334">Feature #26334</a>: Update Redmine gems to latest stable versions</i>)</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=798912017-07-09T04:29:21ZGo MAEDA
<ul><li><strong>Blocks</strong> <i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/23630">Feature #23630</a>: Migrate to Rails 5.2</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=802022017-07-23T11:38:57ZJean-Philippe Langjp_lang@yahoo.fr
<ul><li><strong>Subject</strong> changed from <i>Drop support Ruby 2.2.1 and ealier</i> to <i>Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now required</i></li><li><strong>Status</strong> changed from <i>New</i> to <i>Closed</i></li><li><strong>Assignee</strong> set to <i>Jean-Philippe Lang</i></li><li><strong>Resolution</strong> set to <i>Fixed</i></li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=802092017-07-23T21:53:29ZGo MAEDA
<ul><li><strong>Blocks</strong> <i><a class="issue tracker-3 status-5 priority-4 priority-default closed" href="/issues/26503">Patch #26503</a>: Update nokogiri gem (~> 1.8.0)</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=883642018-11-12T13:36:18ZGo MAEDA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/29947">Feature #29947</a>: Update roadie gem to 3.4.0</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=885132018-11-25T09:58:54ZGo MAEDA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-3 status-5 priority-4 priority-default closed" href="/issues/29999">Patch #29999</a>: Update rdoc gem</i> added</li></ul> Redmine - Feature #25538: Drop support for Ruby 2.2.1 and ealier, 2.2.2+ is now requiredhttps://www.redmine.org/issues/25538?journal_id=888752018-12-09T12:58:16ZGo MAEDA
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/30161">Defect #30161</a>: Incorrect supported Ruby version in doc/INSTALL</i> added</li></ul>