I have split off lib/_debugger.js from nodejs, and made that a separate npm package. This package is called
which are all gdb in spirit.
Why do this crazy thing?
1. As a separate npm package, the lifecycles of the debugger and nodejs release are decoupled. Especially in the beginning, there will be more frequent releases of the debugger.
2. I can have dependencies on other npm packages. Right now, I have just
nopt for options processing, but I am contemplating though
marked-terminal to provide better source-code terminal highlighting.
3. I can provide the latest level of debugger support with older version of node. In a way this is another restatement of item 1. The focus here is that you can get newer debugger features even on your older nodejs installation. (When I was developing this, the current debugger code wouldn't work on my installed version of node. So I had to add a 'util' compatibility module for util)
4. It gives the code space to grow. In node, the debugger is one 1700-line file. In my project, each debugger command is its own file each under 100 lines. After splitting out each command file, one of the first things I did was add more extensive on-line help.
And of course...
5. the gdb command set is more familiar, so proficiency you might have in gdb can be transfered here and vice versa.