ActiveSupport :: Deprecation.silenced = true у меня не работает? - PullRequest
4 голосов
/ 03 февраля 2012

Мое приложение было разработано с использованием Ruby 1.8.7 и Rails 2.3.11.

Я получаю много предупреждений об устаревании при запуске 'rake spec'

DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use   autoload_paths instead. (called from load_paths at /home/soundarapandian/.rvm/gems/ruby-1.8.7-p352/gems/desert-0.5.2/lib/desert/manager.rb:36)
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use autoload_paths instead. (called from load_paths at /home/soundarapandian/.rvm/gems/ruby-1.8.7-p352/gems/desert-0.5.2/lib/desert/manager.rb:36)
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use autoload_paths instead. (called from load_paths at /home/soundarapandian/.rvm/gems/ruby-1.8.7-p352/gems/desert-0.5.2/lib/desert/manager.rb:36)
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use autoload_paths instead. (called from load_paths at /home/soundarapandian/.rvm/gems/ruby-1.8.7-p352/gems/desert-0.5.2/lib/desert/manager.rb:36)
config.load_paths is deprecated and removed in Rails 3, please use autoload_paths instead
config.load_paths= is deprecated and removed in Rails 3, please use autoload_paths= instead
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use autoload_paths instead. (called from load_paths at /home/soundarapandian/.rvm/gems/ruby-1.8.7-p352/gems/desert-0.5.2/lib/desert/manager.rb:36)
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use autoload_paths instead. (called from load_paths at /home/soundarapandian/.rvm/gems/ruby-1.8.7-p352/gems/desert-0.5.2/lib/desert/manager.rb:36)
DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use 

Я попытался добавить

ActiveSupport::Deprecation.silenced = true 
#in config/environments/test.rb

Но все равно я получаю предупреждения. Как я могу отключить его?

Спасибо.

1 Ответ

4 голосов
/ 30 апреля 2012

Похоже, это будет config.activesupport.deprecation = :silence в следующем основном выпуске.См. https://github.com/rails/rails/pull/5986.

Обратите внимание, что теперь вы можете добавить

ActiveSupport::Deprecation::DEFAULT_BEHAVIORS[:silence] = Proc.new { |message, callstack| }

в свое приложение, поскольку @carlosantoniodasilva упоминает в середине комментариев, чтобы получить поведение :silence.

Однако, выбрав стек, ответ eat-your-broccoli будет состоять в том, чтобы исправить предупреждения об устаревании, изменив ваши config.load_paths вызовы в config/application.rb и в других местах на config.autoload_paths, как предлагают предупреждения.Mwah Mwah совет о игнорировании предупреждений в долгосрочной перспективе и т. Д.

...