Подтвердить что ты не робот

Rails: syck удален, вместо этого используется psych

Я получаю это сообщение во время развертывания моего проекта rails capistrano:

syck has been removed, psych is used instead

Версии:

gem 'rails', '=3.2.13'
ruby 2.0.0p247

Как я знаю, Ruby использует родной ямлер "Psych".

В Gemfile нет никакого ямлера.

В моем boot.rb:

require 'yaml'
YAML::ENGINE.yamler = 'psych'

В чем может быть проблема?

4b9b3361

Ответ 1

Это, вероятно, означает, что ямлер где-то назначается в драгоценном камне. Вы можете увидеть, как генерируется сообщение здесь: https://github.com/ruby/ruby/blob/8a896179ada36b4fc0f50d75500c801a3097924a/lib/yaml.rb

Если вызывается yamler = 'syck', выдается предупреждение.

Я просмотрел мои драгоценные камни и обнаружил, что у меня была более старая версия newrelic_rpm, которая имела следующую строку, которая вызывала проблему: YAML:: ENGINE.yamler = 'syck', если определено? (YAML:: ENGINE)

Обновление newrelic gem исправило проблему для меня. Удачи.