Использование версии.gemspec в документации / библиотеке / скрипте
Итак, я недавно писал кучу рубиновых самоцветов, и я бы посчитал удобным включить текущую версию (как указано в gemspec) в rdoc
документация для моих библиотек, а также в OptionParser
-порожденной --help
разделы, используемые моими скриптами (которые я распространяю через gem). В любом случае, мои пользователи смогут легко определить, какую версию библиотеки / скрипта они используют в настоящее время.
Есть ли способ получить доступ к версии, указанной в моем gemspec, из файлов ruby в моем lib/
или же bin/
каталоги? Таким образом, мне не нужно обновлять его сразу в нескольких местах - только в моем gemspec.
В настоящее время я создаю свои gemspecs вручную, я еще не прыгнул на поезд Rake. Если я не могу делать то, что хочу напрямую, только с тем, что дает мне rubygems, позволят ли мне сделать это рейк или другой инструмент?
2 ответа
Я не думаю, что это невозможно, потому что Rubygems - это просто механизм установки библиотек Ruby, у которых нет предопределенного понятия управления версиями.
Однако возможные обходные пути могут включать использование Gem.loaded_specs
чтобы найти, какие драгоценные камни были загружены:
Gem.loaded_specs["mygemname"].version.to_s #=> "1.2.3"
Возможно, вы захотите взглянуть на gem newgem - поскольку он генерирует соответствующий макет каталога, а также файл gemspec (совместимый с GitHub).