treasure-data / serverengine

A framework to implement robust multiprocess servers like Unicorn
Apache License 2.0
759 stars 86 forks source link

Change required ruby version to >=2.0.0 #84

Closed csabiftw closed 7 years ago

csabiftw commented 7 years ago

We have recently ran into the problem of not being able to install the fluentd-plugin-systemd gem which depends on the serverengine gem.

The machines we use run CentOS 7, for which the default ruby version available is 2.0.0.

While I have seen the discussion around the commit which bumped the required version to the current one, I would like to add a few points:

While it would be possible to fork the project and maintain the fork, or take on the task of updating ruby on our machines, I feel like this would be better handled by the proposed change, or the removal of the constraint.

All my points assume that the project does not use any >=2.1.0 specific features.

tagomoris commented 7 years ago

The constraint >= 2.1 is to allow to use Ruby features specific in >= 2.1 (e.g., keyword arguments without default values, String#scrub, Socket#getifaddrs and so on). That is the only way NOT to break the compatibility by using these features in any releases of 2.x.

repeatedly commented 7 years ago

One way is using scl repository: https://www.softwarecollections.org/en/scls/rhscl/rh-ruby23/ or use ruby-build to install latest version.