Skip to content

Latest commit

 

History

History
41 lines (36 loc) · 2.99 KB

TODO.md

File metadata and controls

41 lines (36 loc) · 2.99 KB

TODO

Here are tasks considered for future versions. Once done, they are moved to the Change Log

Next

  • Fix issue with attempting to modify a frozen hash when passed as value for pd command (check if frozen)
  • When using last arg as hash for options, leave out options that are not puts_debuggerer-specific for printing out
  • Automatically print class and method name as part of the file name and line number printout
  • Automatically print self
  • Support displaying the date/time of the pd printout via an option (local and global)
  • Consider supporting header: :method to print the Class#method name as the header (consider supporting in footer/wrapper too)
  • Consider adding performance profiling to pd methods automatically, with some customization options too
  • Fix issue with no printing code in bigger rails apps filled with other gems (perhaps there is some conflict?)
  • Support passing options directly without an object (e.g. pd caller: true)
  • Add the ability to disable all pd statement with a switch for convenience when going back and forth with printing/not-printing (e.g. troubleshooting while testing performance)
  • Consider supporting lines and line_count as aliases for the source_line_count option
  • Have caller printing in Glimmer DSL for Opal print one statement per line
  • Support header: 30 to customize the length of the header (and do the same for footer and wrapper)
  • Support header: '#' to customize the character of the header (and do the same for footer and wrapper)
  • h: true and f: true alternatives for header and footer (as well as other ideas to shorten)
  • Support methods: true to print unique methods not on Object or methods: :all, automatically sorted
  • Consider making header use >>> and footer <<< instead of * for better findability.
  • Provide option to set a logger as printer without hooking formatter unto logger
  • Provide an option to control what log level is used when printing to logger
  • Look into Maintainability issues
  • Special treatment for string objects since AwesomePrint seems does not print multiline
  • Add a hyperlink to file showing up (linking to GitHub repo using something like tty-markdown)

Version TBD

  • Add method_name to what shows up as part of pd call
  • Add performance monitoring support
  • Support auto puts_debuggering of all method names and arguments upon invokation
  • Refactor internals to avoid global method pollution
  • fix issue with printing in rspec inside a Rails project without having to do extra configuration
  • fix issue with erb support
  • Consider the idea of customizing print stream (e.g. stderr instead of stdout). Currently possible through setting printer
  • Highlight the pd being printed if multiple pds exist in the same line (perhaps by calling .red on its string reusing that from ap)
  • Have pd support running from JAR files in JRuby
  • Fix issue with using SimpleDelegator, which seems to break puts_debuggerer output for the class that inherits from it