Domanda
Voglio controllare con "gemma obsoleto" se ci sono qualsiasi tipo di gemma aggiornamenti.È possibile ottenere il risultato della gemma software in uno script come stringa o un valore?
Non ho voglia di sistema execute() o qualcosa di simile.
grazie per il vostro aiuto
Soluzione
RubyGems è in realtà una biblioteca, lo strumento a riga di comando gem
è solo un piccolo involucro intorno a quella libreria. Si può fare qualsiasi cosa che si può fare con lo strumento a riga di comando da quella libreria (e in effetti alcune cose che non si può fare con lo strumento a riga di comando).
Tuttavia, l'API libreria non è così ben documentato come parametri dello strumento a riga di comando. Ci è un testuite, però.
Altri suggerimenti
Si può aiutare
require 'rubygems/commands/outdated_command.rb'
g = Gem::Commands::OutdatedCommand.new()
g.execute()
# => [] for me ))
Si possono trovare altri comandi nella directory lib/ruby/1.9.1/rubygems/comandi/