Debug Adapter Protocol implementation for mq.
Usage
Command Line
Start the DAP server (typically done automatically by your editor):
# Start the DAP server
# Debug a specific query file
Debugging Features
Once connected to a DAP client:
- Set Breakpoints: Click in the gutter or use your editor's breakpoint command
- Conditional Breakpoints: Only stop when an mq expression evaluates truthy, e.g.
x > 3 - Hit Count Breakpoints: Only stop once the hit count condition is met. A bare number, e.g.
3, is shorthand forhit_count >= 3; otherwise it's evaluated as an mq expression withhit_countbound to the current hit count, e.g.hit_count >= 3 && x == 1 - Logpoints: Log a message instead of stopping; uses mq's own
${expr}string interpolation syntax, e.g.x is ${x}.${self}yields the current pipeline value and${$VAR}reads the environment variableVAR - Exception Breakpoints: Enable "Uncaught Exceptions" in your editor's breakpoints pane to automatically pause when a query raises an error that isn't caught by
try/catch - Start Debugging: Launch the debugger with your query file
- Step Through Code: Use step over, step in, and step out commands
- Inspect Variables: Hover over variables or view them in the variables pane
- Watch Expressions: Add mq expressions to your editor's watch pane to re-evaluate them against the current scope every time execution stops
- View Call Stack: See the current execution stack in the call stack pane
Example Debug Session
# Create a query file
# Start debugging
Development
Building from Source
Running Tests
Support
License
Licensed under the MIT License.