web-dev-qa-db-fra.com

Bundler renvoie une erreur constante non initialisée Gem :: SilentUI (NameError) après la mise à niveau vers Rubygems 1.5.0

J'ai exécuté gem update --system Pour mettre à jour vers Rubygems 1.5.0 et après chaque fois que j'exécute des commandes bundle, j'obtiens:

rvm/gems/Ruby-1.8.7-p249/gems/bundler-1.0.9/lib/bundler/ui.rb:56: uninitialized constant Gem::SilentUI (NameError)

Quelqu'un d'autre a-t-il eu ce problème?

53
jaredonline

Mise à jour vers bundler 1.0.10 ou supérieur (gem update bundler). Le problème est résolu dans les versions ultérieures.

101
fifigyuri

Si vous êtes un peu vague sur ce qu'est réellement le bundler et que vous ne voulez pas apprendre, la réponse très courte à la question est:

gem install bundler
6
Andy

Cela a été publié sur le tracker de problème, par mon compte, 6 fois maintenant.

Voici celui auquel j'ai lié tout le monde: https://github.com/carlhuda/bundler/issues/issue/995

2
Ryan Bigg

Re: "il suffit de mettre à jour le bundler 1.0.10." - Notez que vous ne pouvez pas obtenir nécessairement la nouvelle version simplement en faisant

Sudo gem update

Vous devrez désinstaller complètement votre bundler actuel, ignorer les avertissements concernant les dépendances qu'il casse, puis le réinstaller. Cela a corrigé mon Bundler 1.0.7 et a fait fonctionner à nouveau mon système.

2
jm3

Il semble que RubyGems 1.5.0, qui vient de sortir aujourd'hui, est incompatible avec Bundler 1.0.9.

Vous voudrez probablement revenir à RubyGems 1.4 jusqu'à ce qu'une mise à jour soit publiée pour Bundler (qui sera probablement très, très bientôt).

pdate: Bundler 1.0.10 est maintenant disponible.

1
Dylan Markow

Vous pouvez également rétrograder Rubygems, mais ce n'est pas idéal, mais pour les systèmes hérités si vous avez besoin d'une version de bundler spécifique, vous devrez le faire.

Par exemple, sur l'application sur laquelle je travaille actuellement, nous utilisons:

Ruby 1.8.6-p383 RubyGems 1.3.6 Bundler 0.9.26

0
Luca Spiller

Notez que si vous utilisez rvm, vous ne pourrez peut-être pas mettre à niveau le bundler vous-même. Vous devrez peut-être mettre à niveau rvm afin de mettre à jour bundler, car rvm intègre assez étroitement bundler. J'ai eu cette erreur, j'ai essayé de mettre à niveau bundler, je n'ai pas pu, et la mise à niveau de rvm a résolu mon problème.

0
bess