Skip to content

v1.5.0

Compare
Choose a tag to compare
@ko1 ko1 released this 30 Mar 18:44
· 466 commits to master since this release

What's Changed

Summary

  • Utilize Ruby 3.1 features such as nested breakpoints.
  • Change prompt for Ruby expressions.
  • Improve CDP (Chrome frontend).
  • Improve DAP (VSCode frontend), especially TCP/IP support for Windows.
  • Add many tests for CDP/DAP.
  • And many bug fixes!

PRs

  • Ruby 3.1 features
    • Use RubyVM.script_lines if available. by @ko1 in #543
    • Allow reentrant breakpoint on Ruby 3.1 by @ko1 in #558
    • wrap _fork from Ruby 3.1 by @ko1 in #589
  • Debugger UI
    • change prompt to ruby for ruby statements by @ko1 in #574
  • Debugger command
    • Support command on CheckBreakpoint by @st0012 in #495
    • Support case insensitive filename by @ko1 in #577
  • Debugger internal
    • Use hidden iseq functions by @ko1 in #448
    • Use have_func method by @nobu in #452
    • use ISeq#path with ISeq#absolute_path by @ko1 in #544
    • Unify frame and locals collection implementation between ThreadClient and servers by @st0012 in #465
  • CDP
    • Correct changes in #445 by @ono-max in #447
    • Show objects when a hovered expression is a specific class in Chrome by @ono-max in #449
    • Make sure to match all constant variables in Chrome by @ono-max in #450
    • Give correct arguments to "respond_fail" method by @ono-max in #468
    • Set lineNumber of functionLocation correctly by @ono-max in #471
    • Send current page's frame id when debugger sends 'Page.navigate' method by @ono-max in #475
    • Match not only top level namespaces but also inside of them by @ono-max in #477
    • Add query parameters to URL to use the debugger easily by @ono-max in #510
    • Set abbreviated property values in the Chrome DevTools Console by @ono-max in #537
    • Improve error messages in the Chrome DevTools Console by @ono-max in #527
    • Use file scheme instead of http scheme in Page pane by @ono-max in #551
    • Call "cleanup_reader" method in "UI_ServerBase" class when CDP exits by @ono-max in #532
    • Refactor the logic in WebSocket class by @ono-max in #553
    • Remove useless protocol print by @ono-max in #562
  • DAP
    • Do not match any characters after the dot in an expression by @ono-max in #461
    • clear removed breakpoints. by @ko1 in #578
    • greeting error by @ko1 in #593
    • gen-portpath utility by @ko1 in #594
    • send terminated event when exit by @ko1 in #595
    • Support open_frontend on Windows by @ko1 in #596
    • DAP: source on not local fs by @ko1 in #600
    • Avoid passing nil path to File.basename by @st0012 in #602
    • New --open=vscode mechanism by @ko1 in #606
  • Test
    • Call "recv_request" method with correct number of arguments by @ono-max in #458
    • Add a new workflow to test for DAP by @ono-max in #459
    • Fix tests by @ono-max in #480
    • Refactor dap test utils by @st0012 in #467
    • Use omit to skip tests by @st0012 in #484
    • Add test case for DEBUGGER__.step_in by @st0012 in #493
    • Do not override an existed thread in the testing framework by @ono-max in #511
    • Use "kill_remote_debuggee" instead of "kill_safely" method by @ono-max in #512
    • Add the test case for Call Stack feature by @ono-max in #514
    • Add the test case for eval by @ono-max in #515
    • Add the test case for watch by @ono-max in #516
    • Add the test case for catch by @ono-max in #517
    • Add the test case for "Run To Line" by @ono-max in #520
    • Add the test case for "Restart" by @ono-max in #521
    • Make sure to fail DAP's tests when a debuggee does not finish after all scenarios by @ono-max in #533
    • Add the new test framework for DAP and CDP by @ono-max in #547
    • Fix some parts in test/support/protocol_utils.rb to run tests correctly by @ono-max in #555
      1. Add the test framework for CDP by @ono-max in #499
    • Wait for debugger to run completely in the test framework for DAP by @ono-max in #568
    • add a test file for nested breakpont by @ko1 in #569
    • Use longer extension name to reduce name collision chance by @st0012 in #592
    • Add assert locals to protocol tests by @st0012 in #559
    • Improve protocol tests error handling by @st0012 in #576
    • Add the test case for deliting breakpoints in protocol tests by @ono-max in #597
  • Bug fixes and refactoring
    • Escape autocompletion word before putting it into Regexp by @st0012 in #498
    • Colorize oversized local's variable name by @st0012 in #509
    • Fix breakpoints' path option by @st0012 in #482
    • Don't wrap loop around waitpid call by @st0012 in #489
    • Avoid manually setting ThreadClient's location by @st0012 in #505
    • Remove useless if statement by @ono-max in #536
    • escape dirname in Regexp by @ko1 in #570
    • Restore frames on nested break by @ko1 in #575
    • make sure SESSION is initialized by @ko1 in #583
    • use TRAP_SIGNAL instead of :SIGURG by @ko1 in #584
    • Remove unnecessary variable checks by @st0012 in #581
    • Refactor servers by @st0012 in #585
    • Expand path for clear_line_breakpoints by @ko1 in #590
    • flush Tracer's output by @ko1 in #604
  • Misc

New Contributors

Full Changelog: v1.4.0...v1.5.0