2.3.0 • Published 8 years ago

bugger v2.3.0

Weekly downloads
61
License
MIT
Repository
github
Last release
8 years ago

bugger

Build Status

Warning: Experimental

bugger provides Chrome Devtools bindings for node. It integrates tightly with Chrome which means two things:

  • It attempts to fully support the usual Devtools experience, including workspaces and profiling tools.
  • It may break at any moment because Chrome moves fast.

Installation

npm install -g bugger

Usage

Start the script process

Start example/alive.js in debug mode:

bugger example/alive.js

Pass parameters to the script:

# This will be interpreted as a port paramter for alive.js
bugger example/alive.js --port=3000
# This will be interpreted as a port paramter for bugger itself
bugger --port=3000 example/alive.js

Pass V8 options (or advanced node options):

node --trace_gc $(which bugger) example/alive.js

Open the devtools

The correct URL will be written to the output. It should look similar to this:

chrome-devtools://devtools/bundled/devtools.html?ws=127.0.0.1:8058/websocket

You can also open chrome://inspect if you started Chrome with --remote-debugging-targets=localhost:8058. The process should pop up on that page almost immediately.

Options:

  • -v, --version: Print version information
  • -h, --help: Show usage help
  • -p, --port: The devtools protocol port to use, default: 8058
  • -b, --brk: Pause on the first line of the script

Features

Console Tab

  • Basic support for console API
  • Evalute expressions in the console
  • Fully featured repl when not paused (including require)
  • Parts of the Command Line API supported

Sources Tab

  • Step-by-step debugging
  • Variable introspection
  • Live edit the running JavaScript code and persist it using workspaces (really just a Devtools feature)
  • Break on uncaught exception
  • Uses existing source maps (e.g. created via babel --source-maps or coffee --map)
  • Forked modules show up as worker threads. This includes modules forked via cluster.

Known Issues

  • For babel-core/register and coffee-script/register, editing the files doesn't work #48

Network Tab

  • Monitor outgoing http(s) requests your script does
  • Timing of requests, including connect times etc.

Timeline Tab

  • GC events
  • Basic heap usage graphs

Known Issues

  • The timeline tab doesn't do anything useful right now. In future it should show (#47):
    • console.{time, timeEnd, timeStamp}
    • Network request
    • Heap usage over time
    • Profiling data

Profiles Tab

Kudos to...

...the original projects

bugger was heavily inspired by node-inspector and nodebug.

Reference links

2.3.0

8 years ago

2.2.3

8 years ago

2.2.2

8 years ago

2.2.1

8 years ago

2.2.0

8 years ago

2.1.0

8 years ago

2.0.2

8 years ago

2.0.1

8 years ago

2.0.0

8 years ago

2.0.0-beta.3

8 years ago

2.0.0-beta.2

8 years ago

2.0.0-beta.1

8 years ago

2.0.0-beta.0

8 years ago

1.2.0

9 years ago

1.1.0

9 years ago

1.0.0

9 years ago

0.6.1

11 years ago

0.6.0

11 years ago

0.5.2

11 years ago

0.5.1

11 years ago

0.5.0

11 years ago

0.5.0-beta7

11 years ago

0.5.0-beta6

11 years ago

0.5.0-beta5

11 years ago

0.5.0-beta3

11 years ago

0.5.0-beta2

11 years ago

0.5.0-beta1

11 years ago

0.4.3

11 years ago

0.4.2

11 years ago

0.4.1

11 years ago

0.4.0

11 years ago

0.3.2

11 years ago

0.3.1

11 years ago

0.3.0

11 years ago

0.2.6

11 years ago

0.2.5

11 years ago

0.2.4

11 years ago

0.2.3

11 years ago

0.2.2

11 years ago

0.2.1

11 years ago

0.2.0

11 years ago