Ruby on rails 如何为gem提供多种Rails版本
我是《非常简单》的作者,它基本上只由一个助手和一点javascript组成 唯一真正的运行时依赖项是jquery rails 希望它能与任何Rails版本>5兼容。当我最初写《宝石》时,我使用了一个实用的弯曲箭头Ruby on rails 如何为gem提供多种Rails版本,ruby-on-rails,ruby,rubygems,bundler,Ruby On Rails,Ruby,Rubygems,Bundler,我是《非常简单》的作者,它基本上只由一个助手和一点javascript组成 唯一真正的运行时依赖项是jquery rails 希望它能与任何Rails版本>5兼容。当我最初写《宝石》时,我使用了一个实用的弯曲箭头 s.add_dependency 'rails', '~> 5.0.0', '>= 5.0.0.1' 这是相当愚蠢的,因为它不适用于5.1+。我现在将其更改为开放式需求“>=5.0”,并且gem build警告不建议: WARNING: open-ended depen
s.add_dependency 'rails', '~> 5.0.0', '>= 5.0.0.1'
这是相当愚蠢的,因为它不适用于5.1+。我现在将其更改为开放式需求“>=5.0”
,并且gem build
警告不建议:
WARNING: open-ended dependency on rails (>= 5.0) is not recommended
if rails is semantically versioned, use:
add_runtime_dependency 'rails', '~> 5.0'
在最小化维护和确保良好兼容性方面的最佳实践是什么
我是否应该将Rails依赖项声明为开发依赖项,因为这意味着gem安装在Rails引擎中?警告中的建议是很好的建议
s.add\u dependency'rails',“~>5.0”
这意味着rails 5.x可以使用,但6.x不行。s.add\u dependency'rails',“~>5.0”
将允许任何操作∈ [5.0,6.0)
@AlekseiMatiushkin我认为“~>5.0”允许在最后一个点之后有任何数字。所以“5.0”-“5.999999”而不是“6.0”。@Foton我写的正是这个。