Utilizzo della versione .gemspec in documentazione / libreria / script
Domanda
Quindi, ho scritto un sacco di gemme di rubini di recente, e una cosa che troverei conveniente è includere la versione corrente (come specificato nel gemspec) nella documentazione generata da rdoc
per le mie librerie e nelle sezioni OptionParser
-generated --help
utilizzate dai miei script (che sto distribuendo tramite gem). In ogni modo posso rendere più semplice per i miei utenti capire quale versione della libreria / script sta attualmente utilizzando.
Esiste un modo per accedere alla versione specificata nel mio gemspec dai file ruby ??nelle mie directory lib /
o bin /
? In questo modo, non devo aggiornarlo in più punti contemporaneamente - solo nel mio gemspec.
Attualmente generi i miei gemspec manualmente, non sono ancora salito sul treno Rake. Se non posso fare quello che voglio direttamente solo con quello che mi dà rubygems, rastrellare o un altro strumento mi permetterebbe di farlo?
Soluzione
Non c'è modo, non credo, perché Rubygems è solo un meccanismo di installazione per le librerie Ruby, che non hanno una nozione predefinita di controllo delle versioni.
Tuttavia, possibili soluzioni alternative potrebbero includere l'uso di Gem.loaded_specs
per trovare quali gemme sono state caricate:
Gem.loaded_specs["mygemname"].version.to_s #=> "1.2.3"
Altri suggerimenti
Potresti dare un'occhiata a newgem gem - in quanto entrambi generano un layout di directory appropriato e anche un file gemspec (compatibile con GitHub).