Byebug v4.0.0 Release Notes

Release Date: 2015-03-13 // about 9 years ago
  • โž• Added

    • untracevar command that stops tracing a global variable.
    • ๐Ÿ— Window CI build through AppVeyor.
    • ๐Ÿ— OSX CI build through Travis.
    • ๐Ÿ’… Style enforcement through RuboCop.
    • ๐Ÿ’… C style enforment using the indent command line utility.
    • โœ… Some remote debugging tests ([@eric-hu]).
    • ๐Ÿ–จ Printer's support ([@astashov]).

    ๐Ÿ”„ Changed

    • ๐Ÿ”จ A lot of internal refactoring.
    • tracevar now requires the full global variable name (with "$").
    • #92. The catch command is not allowed in post_mortem mode anymore. It was not working anyways.
    • #85. step is now more user friendly when used in combination with up.
    • var const can now be called without an argument and will show constants in the current scope.
    • โš  break with a class name now creates breakpoints regardless of class not being yet defined. If that's the case, it gives a warning but the class is created anyways.

    ๐Ÿ›  Fixed

    • Code reloading issues.
    • set fullpath was not showing fullpaths. Now it is.
    • #93: up, down and frame commands now work in post_mortem mode.
    • rc file (.byebugrc) loading: invalid commands are just ignored instead of aborting, global (home) rc file is now properly loaded before project's file.
    • #93. Backtraces not working in post_mortem mode.
    • 'cmd1 ; cmd2 ; ...; cmdN' syntax which allows running several commands sequentially.
    • #101. finish command not stopping at the correct line.
    • #106. break with namespaced class, like break A::B#c should now work.
    • Command history is now persisted before exiting byebug.
    • Setting breakpoint in a method would stop not only at the beginning of the method but also at the beginning of every block inside the method.
    • #122. Setting breakpoints on module methods ([@x-yuri]).

    โœ‚ Removed

    • autoreload setting as it's not necessary anymore. Code should always be up to date.
    • reload command for the same reason.
    • Gem dependency on debugger-linecache.
    • ๐Ÿšš step+, step-, next+, next-, set/show linetrace_plus and set/show forcestep commands. These were all mechanisms to deal with TracePoint API event dupplication, but this duplicated events have been completely removed from the API since [r48609]( bugs.ruby-lang.org/projects/ruby-trunk/repository/revisions/48609), so they are no longer necessary.
    • info file subcommands: info file breakpoints, info file mtime, info file sha1, info file all. Now all information is listed under info file.
    • โœ… testing setting. It was just a hack to be able to test byebug. Nobody was supposed to actually use it!
    • ๐Ÿ’Ž var class command, just use Ruby (self.class.class_variables).
    • p command, just use eval, or just type your expression and byebug will autoevaluate it.
    • exit alias for quit.