web-dev-qa-db-fra.com

Comment éviter l'avertissement de référence d'argument circulaire dans actifsupport

Comment puis-je éviter l'avertissement de référence d'argument circulaire dans actifsupport. Happens on Ruby 2.2.0

/home/ec2-user/apps/foo_prod/shared/bundle/Ruby/2.2.0/gems/activesupport-3.2.21/lib/active_support/values/time_zone.rb:270: warning: circular argument reference - now
/home/ec2-user/apps/foo_prod/shared/bundle/Ruby/2.2.0/gems/Ruby-ole-1.2.11.7/lib/ole/types/base.rb:265: warning: duplicated key at line 266 ignored: 4095
33
Rpj

Ceci est compass issue here . Ils n'ont pas encore publié de nouvelle version, vous devrez donc peut-être attendre.

8
Dipak Gupta

Utiliser Rails 3.2.22

gem 'Rails', '3.2.22'

OR

correctifs d'avertissement dans la version 1.2.11.8:

bundle update Ruby-ole
16
shilovk

Je n'utilisais pas de boussole dans mon application Sur la base de ce post ici j'ai fait passer la version de Rails de 4.1.1 à 4.1.9 qui fonctionnait.

10
ScottJShea

Ceci est un problème de support actif et a été corrigé avec ces deux commits:

Malheureusement, ces commits n'ont jamais été inclus dans les versions 3.2... Parce que la dernière version actuelle (v3.2.21) est sortie le 18 novembre 2014 Et après que ces commits ont été fusionnés.

Si vous ne voulez pas voir ce message d'avertissement certainement, vous devriez changer Votre Gemfile comme ceci:

 # gem 'Rails', '3.2.21' 
 gem 'Rails', git: 'https://github.com/Rails/rails.git', branche: '3-2-stable'

Sinon, vous devez rétrograder Ruby à la version 2.1 ou attendre la publication de la v3.2.22, , Qui ne sera disponible qu'une fois qu'un trou de sécurité grave aura été trouvé.

Après tout, il n’existe aucun moyen facile d’éviter ce problème. Changer Gemfile Pour un ennui aussi trivial peut être une réaction excessive, à mon avis… .. Cela retardera considérablement votre processus de déploiement.

10
Tsutomu

voici ce que j’ai fait pour résoudre ce problème, j’ai eu le dernier Ruby et les gemmes ne sont pas compatibles avec ça, donc après une bagarre qui a duré près d’un jour, je suis passé à une version plus ancienne de Ruby en utilisant RVM

de Ruby-2.2.1 à Ruby-2.0.0, 

encore une fois, ce n’est pas un problème avec la version de Ruby, mais une incompatibilité avec des gemmes, essayez et ayez de la chance avec ça.

3
Code Tree
2
Satyam Singh

En théorie, la mise à jour vers Rails 4.2.0 - ce que vous devriez pouvoir faire avec les commandes suivantes - devrait corriger cette erreur, bien que cela ne fonctionne pas pour moi:

rvm use [email protected] --create
gem install Rails 
Rails -v 

Je reçois également le même message "erreur d'argument circulaire" (j'ai posté plus d'informations sur mes tentatives infructueuses de le réparer ici, je l'actualiserai si je trouve une réponse: La mise à jour de la gem Rails ne fonctionne pas (versions 4.1.1 à 4.2. 0) comme solution à "warning: référence d'argument circulaire" error ). 

1
Rachel C.

J'ai aussi rencontré le même problème, vous pouvez poursuivre les étapes suivantes pour le résoudre (cela a fonctionné pour moi).

$ gem uninstall compass
$ gem update --system
$ gem install compass
0
Hamzeen Hameem