Я помогаю в разработке серии взаимосвязанных драгоценных камней. Поэтому я не хочу, чтобы у них была жесткая зависимость друг от друга, но я do хочу, чтобы они запускали тесты в разработке, которые используют друг друга. Просто так? Просто используйте add_development_dependency
в gemspec, правильно? Ну, есть одна маленькая морщина - репозиторий git содержит все драгоценные камни, и поэтому я хочу, чтобы Gemfile указывал на локальную копию драгоценного камня. Это работает с жесткой зависимостью. В gemspec у меня есть эта строка для моей жесткой зависимости:
s.add_dependency "mygem-core"
И затем в Gemfile у меня есть эта строка:
gem "mygem-core", :path => "../mygem-core"
Это работает PERFECT. Зависимость существует, когда я выталкиваю этот пакет, и когда я тестирую, он будет использовать локальную копию mygem-core. Проблема в том, что когда я помещаю ЭТО в gemspec:
s.add_development_dependency "mygem-runtime"
И затем это в Gemfile:
gem "mygem-runtime", :path => "../mygem-runtime"
Затем я получаю сообщение об ошибке при запуске пакета:
You cannot specify the same gem twice coming from different sources. You specified that mygem-packager (>= 0) should come from source at ../mygem-packager and
Да, это не опечатка в конце. В конце буквально пустое пустое место для второго "места". Есть ли разумные способы обойти это? Я хочу добавить это как зависимость от разработки и использовать локальный источник. Что мне не хватает?