v1.5.0
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
- Debugger UI
- Debugger command
- Debugger internal
- 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
- 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
- Exclude useless files from gem by @nobu in #451
- Fix spelling in gem description by @nertzy in #453
- Clean up Rakefile by @st0012 in #462
- Use "DEBUGGER__.safe_inspect" when objects are inspected by @ono-max in #473
- Unify internal path skipping logic by @st0012 in #454
- Don't install
bin
directory by @voxik in #481 - Add Ruby 3.1 to CI matrix by @st0012 in #494
- Update odd sentence in readme demonstration code by @hugovandevliert in #487
- Improve help by @kaiquekandykoga in #507
- Add explanations about how to generate tests in DAP by @ono-max in #513
- Fix the typo in README by @ono-max in #529
- Use earlier instead of erlier by @kaiquekandykoga in #545
- test: Fix a typo in method name by @olleolleolle in #531
- Mention Ruby version requirement in Readme by @st0012 in #500
- Remove explanations about how to disable ScreenCast displays by @ono-max in #528
- Small refactors by @st0012 in #546
- Remove duplicated require by @st0012 in #573
New Contributors
- @nobu made their first contribution in #451
- @nertzy made their first contribution in #453
- @voxik made their first contribution in #481
- @hugovandevliert made their first contribution in #487
- @kaiquekandykoga made their first contribution in #507
Full Changelog: v1.4.0...v1.5.0