Avertissement avec brouillard et AWS: impossible de charger la gem ‘unf’

Chaque action dans une console de rails (serveur de rails, console de rails, db: migrer, etc.) déclenche un avertissement depuis la dernière mise à jour du paquet:

[fog][WARNING] Unable to load the 'unf' gem. Your AWS ssortingngs may not be properly encoded. 

Je suis sûr que je n’ai rien changé dans les chaînes AWS qui se trouvent dans mon fichier application.rb:

  # Amazon S3 credentials ENV["AWS_ACCESS_KEY_ID"] = "AWS_ACCESS_KEY_ID" ENV["AWS_SECRET_ACCESS_KEY"] = "AWS_SECRET_ACCESS_KEY" ENV["AWS_S3_BUCKET"] = "my-bucket" 

Je n’ai pas ce joyau “unf” dans mon gemfile. Dois-je l’append?

Oui, cela vient de se passer il y a quelques jours. Vous pouvez voir à partir de la requête pull et valider que la dépendance unf est facultative.

https://github.com/fog/fog/pull/2320/commits

Lorsque j’ai mis à jour mon paquet actuel avec du brouillard, j’ai reçu les mêmes avertissements et ajouté

 gem 'unf' 

supprime en effet l’avertissement sans aucun problème.

Si vous ne disposez d’aucun object / seau S3 qui n’aurait pas de caractère ASCII dans les noms, je pense que vous pouvez ignorer cet avertissement. Nous pouvons faire quelque chose pour le rendre moins bruyant aussi, mais pour l’instant vous pouvez ignorer ou append des mots clés pour le calmer, comme l’a fait remarquer @trh.

J’ai apparemment installé fog-1.18.0 quand j’ai vu cette erreur. (Redémarrer un projet aws vagrant installé il y a quelque temps) Ma tentative naïve de correction consistait à commencer par une mise à niveau

  gem install fog 

qui a mis à jour quelque chose à brouillard-1.21.0. Comme cela a averti, “Cela pourrait prendre un certain temps …” … et cela n’a pas aidé.

Exactement où append “gem ‘unf'” n’était pas clair dans la solution votée ici, il semblait être lib / fog / aws.rb mais c’était déjà là quand j’ai regardé.

  gem install unf 

semblait l’append quelque part, mais le problème ne s’est pas résolu.

J’ai amélioré le vagrant lui-même (1.4.3 à 1.5.1) et CELA ne l’a pas réparé.

Finalement, le correctif était

  vagrant plugin install unf 

comme je l’ai trouvé dans un fil de discussion à https://github.com/mitchellh/vagrant/issues/2507

Je ne suis pas sûr si l’une de mes tentatives de tâtonnement précédentes était également nécessaire, alors je les ai notées ici de toute façon.