debug.gem が便利

今まで Rails プロジェクトなら pry 入れてたけど、 Ruby 3.1 から導入された「debug.gem」ならば追加のインストールは不要で利用可能。

require 'debug' def hoge(str) debugger puts str end hoge(str)
main.rb
$ ruby main.rb [1, 9] in main.rb 1| require 'debug' 2| 3| def hoge(str) => 4| debugger 5| 6| puts str 7| end 8| 9| hoge('Hello, world!') =>#0 Object#hoge(str="Hello, world!") at main.rb:4 #1 <main> at main.rb:9 (rdbg) str "Hello, world!"

debugger の他、binding.break でも利用可能。

また実行時、

$ ruby -r debug main.rb

とすれば require 'debug' は不要。

他にもたくさん機能がありそうなので試してみたい。

参考