2015-05-11 42 views
1

如何在Rails应用程序中找到哪些宝石需要更新(如果Ruby版本已升级)?宝石兼容性和Ruby版本

例如,如果我将Ruby从2.1.3升级到2.2.2,我想知道哪些Rails应用程序宝石将不得不升级。偏好将保持最小化,以减少事情中断的可能性。

重要的是这将是一个干运行。这样可以评估升级所需的工作量。

我检查了宝石自述文件没有太多运气。

+0

例如,您通常可以在'.gemspec'文件中找到所需的ruby版本,例如[this one](https://github.com/sferik/rails_admin/blob/master/rails_admin.gemspec#L30)。这是你寻找的那种东西吗? –

+0

谢谢保罗!是的,这与我正在寻找的东西非常接近。是否有宝石或其他工具来自动化该过程?我想我可以写我自己的脚本,但是如果有更简单的方法,那将会很好。鉴于Rails应用程序Gemfile中的宝石数量,手动检查每个宝石以查看它们与哪些Ruby版本兼容将非常耗时。 – RezaF

+0

不幸的是,如果有这样的事情,我不知道它。在一个完美的世界中,你可以在本地更新ruby版本,重新绑定,并运行所有的测试以查看是否有任何失败(并且希望测试已经足够覆盖所有基础)。除此之外,我能想到的最好的方法是只查看自己放置在Gemfile中的宝石。我也不会太担心这样的小版本增加。红宝石2到3将是一个更大的,可能突破的飞跃,但如果有任何干扰现有系统的话,2.1到2.2应该做的不多。 –

回答

0

如果您更新您的rails版本,它应该安装或解决运行新rails版本所需的依赖项。至于你输入的那些不是依赖于Rails的gem,你可以在rubygems.org上检查gem的兼容性。只需在搜索栏中输入您的宝石的标题。

+0

谢谢吉米!这些都是伟大的想法,但我们正试图避免更新Rails,因为这将会破坏事情。我想,手动检查过程就是我们所要避免的,但它不会是世界末日。自动化总是更好。 – RezaF

相关问题