Как разрешить широкий спектр версий Rails для драгоценного камня - PullRequest
0 голосов
/ 15 марта 2019

Я автор довольно простого движка Rails gem , который в основном состоит из помощника и небольшого количества 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 dependency on rails (>= 5.0) is not recommended
  if rails is semantically versioned, use:
    add_runtime_dependency 'rails', '~> 5.0'

Какова лучшая практика с точки зрения минимизации обслуживания и обеспечения достойной совместимости?

Должен ли я объявить зависимость Rails как development_dependency, поскольку подразумевается, что гем монтируется в движке rails?

1 Ответ

1 голос
/ 15 марта 2019

Предложение в предупреждении - хороший совет.

s.add_dependency 'rails', '~> 5.0' Это будет означать, что это нормально для Rails 5.x, но не для 6.x.

...