Usando la versión .gemspec en la documentación / biblioteca / script
Pregunta
Entonces, he estado escribiendo un montón de gemas de rubí recientemente, y una cosa que me parece conveniente es incluir la versión actual (como se especifica en la especificación gems) en la documentación generada por rdoc
para mis bibliotecas y en las secciones OptionParser
-generated --help
utilizadas por mis scripts (que estoy distribuyendo a través de gem). De cualquier manera, puedo facilitar a mis usuarios determinar qué versión de biblioteca / script están usando actualmente.
¿Hay alguna forma de acceder a la versión que especifico en mi gemspec desde los archivos ruby ??en mis directorios lib /
o bin /
? De esa manera, no tengo que actualizarlo en varios lugares a la vez, solo en mi gemspec.
Actualmente genero mis gemspecs a mano, todavía no me he subido al tren Rake. Si no puedo hacer lo que quiero directamente con solo lo que me da rubygems, ¿el rastrillo u otra herramienta me lo permitirán?
Solución
No hay forma, no creo, porque Rubygems es solo un mecanismo de instalación para las bibliotecas Ruby, que no tienen una noción predefinida de control de versiones.
Sin embargo, las posibles soluciones podrían incluir el uso de Gem.loaded_specs
para encontrar qué gemas se han cargado:
Gem.loaded_specs["mygemname"].version.to_s #=> "1.2.3"
Otros consejos
Es posible que desee echar un vistazo a newgem gema, ya que ambos generan un diseño de directorio apropiado y también un archivo gemspec (compatible con GitHub).