環境
- Windows11
- Ruby3.4
内容
Rubyでこのようなメッセージが表示されました。厳密にいえばエラーではなく注意メッセージです。
hoge.rb
C:/Ruby34-x64/lib/ruby/3.4.0/win32/registry.rb:2: warning: fiddle/import is found in fiddle, which will no longer be part of the default gems starting from Ruby 3.5.0.
You can add fiddle to your Gemfile or gemspec to silence this warning.
Ruby3.4.xまでは標準ライブラリとしてインクルードされていたfiddleが、次バージョンのRuby3.5より、標準ライブラリから外れますといった注意喚起メッセージとなります。標準ライブラリから外れるということは、自力でfiddleをインストールしないと使えなくなるということになります。
fiddleってなに?
fiddleはCで書かれた拡張ライブラリやWinAPIなどを外部から呼び込むためのライブラリです。換言すれば、fiddleはRuby版のFFI (Foreign Function Interface)ということです。fiddleを使うことで、Cのライブラリにネイティブにアクセスすることができるようになります。fiddleを直接使うことはないにしても、win32/registryなどが依存しています。Windowsのレジストリを操作するライブラリを使う場合は、引っかかってくることになるので注意が必要です。