Changes for version 0.36

  • Lots of fixes.
  • Complete rewrite of the line number and caller location algorithmn. It now properly prints exactly the calling location, it's proper line number, and the preceeding line numbers from where those subroutines were called. You get the entire tree in names and line numbers. This may slightly slow down the output, but it's very neglegible.
  • Indenting of output for nested calls done properly now. Only one space per level. No need to use up even more precious line space.
  • Line number(s) are auto-padded for proper alignment (at least in subsequent output). This behavior matches the subroutine name padding behavior.
  • Speaking of subroutine name padding... the default has been changed from 25 spaces to 15. You, of course, can change that when you instantiate the object, as usual.
  • Line number padding is adjustable now too.
  • You can now indicate on output whether running as a forked child or the parent. This is with the "%f" prefix placeholder. It only prints a "P" for parent, or "C" for child. This adds to the behavior of version 0.35, where it only printed it was a child when the child exited (which it still does).

Modules

A Handy Debugging Module With Colorized Output and Formatting

Examples