I rewrite lib/debug.rb (called old debug.rb) with recent TracePoint APIs (called new debug.rb).
It has several incompatibility but maybe nobody uses lib/debug.rb so there is no compatible issues. In fact I tried several features of lib/debug.rb and it doesn't work nowaday.
I tried it with our app, and it crashes weirdly, maybe because of Thread.report_on_exception = true?
(rdbg) c
#<Thread:0x00007fa3421f4630 ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:78 run> terminated with exception (report_on_exception is true):
~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/source_repository.rb:13:in `read': No such file or directory @ rb_sysopen - eval (Errno::ENOENT)
from ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/source_repository.rb:13:in `add'
from ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:825:in `on_load'
from ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:88:in `block in initialize'
["~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/thread_client.rb",
599,
#<Errno::ENOENT: No such file or directory @ rb_sysopen - eval>,
["~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/source_repository.rb:13:in `read'",
"~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/source_repository.rb:13:in `add'",
"~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:825:in `on_load'",
"~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:88:in `block in initialize'"]]
~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/source_repository.rb:13:in `read': No such file or directory @ rb_sysopen - eval (Errno::ENOENT)
from ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/source_repository.rb:13:in `add'
from ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:825:in `on_load'
from ~/.gem/ruby/3.0.1/gems/debug-1.0.0.beta3/lib/debug/session.rb:88:in `block in initialize'
"Break Point" I presume. But yes, my 2 cents of feedback is the same. Might just be habit, but I had a hard time remembering it just during my 10 minutes session of trying the gem.
I think binding.debug is best. It's not that long to type, and people are already used to e.g. binding.irb/pry.
Too short feels cryptic and easier to get accidentally committed.