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

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

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'

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

1 ответ

Решение

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

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

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

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

Другие вопросы по тегам