Friday, May 31, 2024

Puts Debuggerer 1.0.0 Includes Invoked Class/Method Name

Puts Debuggerer finally goes version 1.0.0, and it now has a very helpful new feature: printing the class name and method name as part of `pd` printouts. For those unfamiliar with Puts Debuggerer, the project was inspired by a blog post by Aaron Patterson titled "I am a puts debuggerer", which jokingly borrows from the wording of the comedy movie Dumb and Dumberer, turning debugger to "debuggerer". The Puts Debuggerer Ruby gem aimed at automating most of the suggestions in that blog post. The project README intro is included below for your information. Happy Puts Debuggerering (make sure to ⭐️ the project on GitHub)!!!


Patrik said...

That's really nice, but instance methods should follow the #-notation.

Andy Maleh said...

Yes, I realize that. At the moment, the library does not distinguish between instance methods and class methods, which is why it was decided to just display a '.' between the class and method. It is good enough as a start.

But, there is a project TODO item to explore adding the functionality of distinguishing instance methods from class methods, and showing '#' as the separator for instance methods and '::' as the separator for class methods (or '.' if it looked more programmer friendly). If that were implemented in the future, it would get announced on this blog (you are welcome to look into it yourself too and submit a Pull Request if you want this feature earlier).