Skip to content

4.0.0

Compare
Choose a tag to compare
@deivid-rodriguez deivid-rodriguez released this 07 Dec 12:58
· 1560 commits to master since this release

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 (thanks @eric-hu).
  • Printer's support (thanks @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.
  • up, down and frame commands now work in post_mortem mode (#93).
  • 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, 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.