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

Используйте RbConfig вместо устаревшего и устаревшего Config

Когда я запускаю приложение Rails в WEBrick на Ubuntu, после обновления до ruby-1.9.3-p327, я получаю следующую ошибку:

[rake --tasks]/home/dsilver/.rvm/gems/ruby-1.9.3-p327/gems/em-dir-watcher-0.9.4/lib/em-dir-watcher.rb:7: Используйте RbConfig вместо устаревшей и устаревшей конфигурации.

Любая идея, что происходит?

Я видел некоторые сообщения, связывающие это с ImageMagick в Windows. Я нахожусь на Ubuntu, но приложение действительно использует ImageMagick, и функциональность ImageMagick, похоже, сломалась с момента обновления ruby ​​с 1.9.2 до 1.9.3. Я подозреваю соединение.

Спасибо!

4b9b3361

Ответ 1

Модуль Config был переименован в RbConfig. Его все еще можно использовать старое имя для обратной совместимости, но Ruby выдает предупреждение, если вы это сделаете.

em-dir-watcher gem использует старое имя, поэтому вы видите предупреждение при его загрузке. Кто-то уже отправил запрос pull, но последнее обновление до em-dir-watcher прошло более двух лет назад, поэтому он не может быть объединен.

Это предупреждение, которое генерируется, а не ошибка, поэтому ваш код на самом деле все еще работает нормально. Если вы действительно хотите избавиться от предупреждения, вы можете добавить что-то вроде этого, прежде чем вы require 'em-dir-watcher':

Object.send :remove_const, :Config
Config = RbConfig

Это означает, что Config будет таким же, как RbConfig, что и делает Ruby, но предотвращает предупреждение.

Ответ 2

Вы можете сделать (не рекомендуется):

Перейдите в файл ../lib/ruby ​​/1.9/rbconfig/obsolete.rb

Отредактируйте файл, изменение комментирует строку #warn...

С этим изменением исключил совет "предупредить"