如何为 gem 允许广泛的 Rails 版本
How to allow a wide range of Rails versions for a gem
我是非常简单的 Rails engine gem 的作者,它基本上只包含一个助手和一些 javascript。
唯一真正的运行时依赖是jquery-rails.
希望它应该与任何 Rails 版本 > 5 兼容。在我最初编写 gem 时,我使用了实用的波浪箭头。
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 依赖项声明为 development_dependency,因为它暗示 gem 安装在 rails 引擎中?
警告中的建议是个好建议。
s.add_dependency 'rails', '~> 5.0'
这意味着 Rails 5.x 没问题,但 6.x.
就不行了
我是非常简单的 Rails engine gem 的作者,它基本上只包含一个助手和一些 javascript。
唯一真正的运行时依赖是jquery-rails.
希望它应该与任何 Rails 版本 > 5 兼容。在我最初编写 gem 时,我使用了实用的波浪箭头。
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 依赖项声明为 development_dependency,因为它暗示 gem 安装在 rails 引擎中?
警告中的建议是个好建议。
s.add_dependency 'rails', '~> 5.0'
这意味着 Rails 5.x 没问题,但 6.x.