Come hackerare boot.rb per interrompere i fastidiosi avvisi?Il supporto Gem::SourceIndex#search per i modelli String è deprecato

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

Domanda

Ogni volta che eseguo i comandi rake o most rails, ricevo un fastidioso avviso.Sono ancora un principiante con Ruby/Rails e vorrei consigli su come hackerare boot.rb per fermare il fastidioso avviso.Sto usando Rails 1.2.6 e RubyGems 1.3.1.(Non ho aggiornato Rails a 2.x perché sto ancora imparando Rails da un libro che utilizza 1.2.x.) Sono grato per qualsiasi consiglio.Non sono riuscito a trovare una soluzione cercando su Google.Grazie!

boot.rb riga 20:

rails_gem = Gem.cache.search('rails', "=#{rails_gem_version}.0").sort_by { |g| g.version.version }.last

Messaggio fastidioso:

boot.rb:20:Warning: Gem::SourceIndex#search support for String patterns is deprecated
È stato utile?

Soluzione

C'è una chiamata all'indice Fonte gioiello in una boot.rb:. "Gem.cache.search", basta sostituire "ricerca" con "find_name"

Altri suggerimenti

Innanzitutto, dovresti studiare un approccio che rimuova l'avviso (come l'aggiornamento delle rotaie o delle gemme rubino), piuttosto che sopprimere se possibile.In secondo luogo, secondo i documenti sul metodo warn ( http://www.ruby-doc.org/core/classes/Kernel.html#M006017 ) puoi sopprimerlo invocando /usr/bin/ruby con il flag -W0.Tieni inoltre presente che questo messaggio viene emesso su STDERR, quindi potresti utilizzare anche le normali tecniche di reindirizzamento Unix (ad esempio per reindirizzarlo a /dev/null o ancora meglio a un file warnings.log)

La risposta continua a dare. Grazie. Mi stava facendo impazzire.

Per quanto riguarda gli aggiornamenti di versioni più recenti, il libro, (Agile Development) ha esito negativo con le versioni più recenti.

Inoltre, sto facendo spesso rake db: migrate. Non so come soffocare la messaggio chiamando rubino -W0 in quel caso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top