如果我将ruby 2.5.1版与Rails 2.3.18版一起使用会发生什么?

时间:2018-07-26 13:30:28

标签: ruby-on-rails ruby ruby-on-rails-2 ruby-1.9.3 ruby-2.5

如果我将ruby版本2.5.1与rails版本2.3.18一起使用会发生什么?

我在Rails 2.3.18和ruby 1.9.2p320上构建了Rails应用程序, 我只想升级红宝石版本,不是可以吗?

我必须面对哪些挑战?

1 个答案:

答案 0 :(得分:8)

GitHub维护a public fork的分支机构已针对较旧的Rails版本进行了更改,并随着时间的推移而不断变化。一段时间以来,他们在较新的Ruby版本上运行的Rails发行版比最初支持的版本更旧,因此您可能会发现一些有用的提示,以了解需要向何处移植。不过,他们已经有几年没有使用2.3了,因此充其量只能使减少工作。

通常,Ruby版本进行了一些不兼容的更改,但是由于代码库的大小和Rails的多样性,这些更改中的大多数确实在某些地方发生了。对我来说,这似乎是个坏主意:例如,较新的Ruby版本中的任何安全修复程序,在如此老的Rails发行版中,已知的漏洞将远远超过它。

如果您这样做是因为您的应用程序使用系统Ruby,而您正在升级/替换操作系统,那么我建议您使用rbenv / chruby / ruby​​-build / ruby​​-install为该应用程序安装旧版本

毫无疑问,强烈建议不要运行这样的旧版本的Rails,并且将其公开暴露在互联网上绝对是危险的-但我还是会说它。

Rails LTS显然提供了向Rails 2.3反向移植安全修复程序的服务,这可能使其更加安全。他们似乎也currently support running Rails 2.3 with Ruby 2.3;虽然不是2.5,但可能会使您离得更近或足够好。