Зависимости времени выполнения и зависимости разработки в Jekyll - PullRequest
0 голосов
/ 02 апреля 2020

Следующие зависимости должны быть добавлены в файл gemspec для обеспечения проекта jekyll:

json -v '2.3.0'
nokogiri -v '1.10.9'
nokogumbo -v '2.0.2'
jaro_winkler -v '1.5.4'

Какие из этих зависимостей следует классифицировать как runtime dependencies? Что следует классифицировать как development dependencies?

Как определить, является ли данная зависимость runtime dependency или development dependency?

Специфические строки c в файле gemspec будут выглядеть следующим образом:

  s.add_runtime_dependency 'aaaaa-aa-aaaa', '~> x.x'  
  s.add_development_dependency 'bbbb-bbbbb', '~> y.y'  

Весь файл gemspec будет выглядеть примерно так:

Gem::Specification.new do |s|
  s.name          = ''
  s.version       = ''
  s.license       = ''
  s.authors       = ['', '']
  s.email         = ['']
  s.homepage      = ''
  s.summary       = ''
  s.files         = `'
  end

  s.platform = Gem::Platform::RUBY
  s.add_runtime_dependency 'aaaaa-aa-aaaa', '~> x.x'
  s.add_development_dependency 'bbbb-bbbbb', '~> y.y'
end  

Это выполняется на экземпляре Amazon EC2 под управлением Amazon Linux 2.

1 Ответ

1 голос
/ 02 апреля 2020

Поскольку речь идет о теме Jekyll (упакованной в виде драгоценного камня), мы можем с уверенностью сказать, что основным приложением здесь является приложение Jekyll, которое зависит от этого драгоценного камня. Здесь нет жестких правил, но кажется разумным сказать, что среда приложения Jekyll является «средой выполнения» в том, что касается гема. Поэтому все, от чего зависит гем в ходе его использования в приложении Jekyll, является зависимостью времени выполнения. По крайней мере, тема Jekyll будет зависеть от какой-то конкретной версии самого Jekyll и, возможно, некоторых других вещей.

Вот краткий способ выразить это. Если jekyll build завершится неудачно без упомянутых вами драгоценных камней, то они являются зависимостями времени выполнения.

Зависимости разработки предназначены для дополнительных драгоценных камней, которые вы хотите использовать только во время разработки, например, rspe c или rubocop. .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...