Bundler не устанавливает зависимости моего драгоценного камня - PullRequest
0 голосов
/ 06 июня 2019

Я создал камень с gemspec:

# frozen_string_literal: true

Gem::Specification.new do |s|
  s.name           = 'my_gem'
  s.version        = '0.0.1'
  s.date           = '2019-05-31'
  s.summary        = 'summary'
  s.description    = 'description'
  s.authors        = ['my name']
  s.email          = 'my@email.com'
  s.files          = Dir['{lib}/**/*.rb', 'bin/*', '*.md']
  s.require_path   = 'lib'
  s.executables    = ['some_bin']
  s.homepage       = 'https://some.homepage.com'
  s.license        = 'MIT'
  s.add_dependency 'hidapi', '= 0.1.9'
end

Я ожидал, что после добавления моего драгоценного камня в Gemfile, упаковщик установит не только my_gem, но и зависимости, то есть hidapi. Однако, когда я пытаюсь запустить rails s, я получаю сообщение об ошибке.

Traceback (most recent call last):
bin/rails: Bootsnap::LoadPathCache::FallbackScan
(...)
kernel_require.rb:22:in `require': cannot load such file -- hidapi (LoadError)

В Gemfile.lock my_gem не имеет никакой зависимости. Что я пропустил?

Решение

Я думал, что упаковщик использует только gemspec, но, похоже, он использует Gemfile из моего драгоценного камня. Мой gemfile также имел все зависимости, но он должен требовать gemspec напрямую. Это должно выглядеть так:

# frozen_string_literal: true

source 'https://rubygems.org'

gemspec

Я даже не знаю, нужен ли source 'https://rubygems.org'.

...