Я только что обновил свой Mac до Snow Leopard и запустил свою среду Rails. Единственное отличие - не считая OSX - с моей предыдущей установкой в том, что теперь я использую ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
(по умолчанию Snow Leopard), а не 1.8.6.
Теперь я вижу предупреждения об устаревании, связанные с OpenSSL, когда я запускаю свой код:
warning: argumtents for OpenSSL::Cipher::Cipher#encrypt and OpenSSL::Cipher::Cipher#decrypt were deprecated; use OpenSSL::Cipher::Cipher#pkcs5_keyivgen to derive key and IV
Пример моего кода, который вызывает эти предупреждения (он декодирует зашифрованную строку) в строке 4:
1. def decrypt(data)
2. encryptor = OpenSSL::Cipher::Cipher.new('DES-EDE3-CBC')
3. key = "my key"
4. encryptor.decrypt(key)
5. text = encryptor.update(data)
6. text << encryptor.final
7. end
Я изо всех сил пытаюсь понять, как я могу решить эту проблему, и Google мне не помогает. Следует ли мне попробовать перейти на Ruby 1.8.6 (и если да, то как лучше всего это сделать?), Я должен попытаться просто скрыть предупреждения (спрятать голову в песок ?!) или есть простое решение, которое я могу исправить. можно применить в коде?