On 17 March 2016 at 13:18, Sam Ruby <ru...@intertwingly.net> wrote:
> On Thu, Mar 17, 2016 at 7:20 AM, sebb <seb...@gmail.com> wrote:
>> As the subject says.
>
> Depends on your definition of require.  Ruby >= 2.2.0 will use less
> memory and be more responsive due to improvements in garbage
> collection:
>
> https://www.ruby-lang.org/en/news/2014/12/25/ruby-2-2-0-released/
>
> For that reason, I'd like the deployed code to use a version of Ruby
> that has the improved GC.

Fair enough, but that can be done in the documentation and/or puppet config.
No need to embed it in scripts.

> I would agree that that shouldn't be required for development/testing.
>
> I haven't investigated, but perhaps that could be expressed in
> Gemfiles using the group construct?
>
> http://yehudakatz.com/2010/05/09/the-how-and-why-of-bundler-groups/

Probably, but that adds complication and does not seem necessary here.

Note that as it stands, AFAICT the status passenger code won't even
run with 2.3.1.

The same restriction would presumably apply when using the ruby
statement as part of a group, since it's the statement itself that
does not support version ranges.

> - Sam Ruby
>
>> MacOS/X comes with 2.0.0 which seems to work for most if not all the code.
>>
>> So is it necessary to specify ruby 2.3.0 in status/Gemfile
>> and /usr/local/bin/ruby2.3.0 in passenger.cgi?
>>
>> In particular it seems wrong to specify that ruby is under
>> /usr/local/bin, even if 2.3.0 is required.
>>
>> I see that Gemfile does not support ruby version ranges (Why??), but
>> one can use the following work-round:
>>
>> raise 'Ruby version must be at least 2.0' unless  RUBY_VERSION.to_f >= 2.0

Reply via email to