Использование версии .gemspec в документации / библиотеке / скрипте

StackOverflow https://stackoverflow.com/questions/425372

  •  06-07-2019
  •  | 
  •  

Вопрос

Итак, недавно я писал кучу драгоценных камней ruby, и одна вещь, которую я счел бы удобной, это включить текущую версию (как указано в gemspec) в rdoc-сгенерированная документация для моих библиотек, а также в OptionParser-сгенерированный --help разделы, используемые моими скриптами (которые я распространяю через gem).Любым способом я могу упростить для моих пользователей определение того, какую версию библиотеки / скрипта они используют в данный момент.

Есть ли какой-либо способ, которым я могу получить доступ к версии, указанной в моем gemspec, из файлов ruby в моем lib/ или bin/ каталоги?Таким образом, мне не нужно обновлять его в нескольких местах одновременно - только в моей gemspec.

В настоящее время я генерирую свои gemspecs вручную, я еще не запрыгнул на Грабли.Если я не могу делать то, что хочу, напрямую, используя только то, что дает мне rubygems, позволит ли мне rake или другой инструмент сделать это?

Это было полезно?

Решение

Я не думаю, что такого способа нет, потому что Rubygems - это просто механизм установки библиотек Ruby, в которых нет предопределенного понятия управления версиями.

Однако возможные обходные пути могут включать использование Gem.loaded_specs чтобы узнать, какие драгоценные камни были загружены:

Gem.loaded_specs["mygemname"].version.to_s #=> "1.2.3"

Другие советы

Возможно, вы захотите взглянуть на новый гем gem - поскольку он одновременно генерирует соответствующий макет каталога, а также файл gemspec (совместимый с GitHub).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top