Skip to content

✨ feat(mq-dap): add conditional/hit-count breakpoints, logpoints, and watch expressions#2010

Open
harehare wants to merge 2 commits into
mainfrom
feat/dap-conditional-breakpoints-watch-expressions
Open

✨ feat(mq-dap): add conditional/hit-count breakpoints, logpoints, and watch expressions#2010
harehare wants to merge 2 commits into
mainfrom
feat/dap-conditional-breakpoints-watch-expressions

Conversation

@harehare

Copy link
Copy Markdown
Owner

Summary

Extends the DAP breakpoint model with condition, hit_condition, and log_message support, evaluated against the live scope at the breakpoint location. Logpoints report via a new output event instead of stopping. Also implements the previously-unhandled SetExpression request (used for inline watch editing) and advertises the corresponding DAP capabilities.

Type of Change

  • 🐛 Bug fix
  • ✨ New feature
  • ♻️ Refactor
  • 📝 Documentation
  • ⚡ Performance
  • ✅ Test
  • 📦 Build / dependencies
  • 👷 CI

Checklist

  • I ran cargo fmt and cargo clippy and addressed any warnings
  • I ran just test-all and all tests pass
  • I added or updated tests covering this change
  • I updated relevant documentation (/docs, crate README.md) if needed
  • I added a changelog entry if this is a user-facing change

Additional Context

… watch expressions

Extends the DAP breakpoint model with condition, hit_condition, and
log_message support, evaluated against the live scope at the breakpoint
location. Logpoints report via a new output event instead of stopping.
Also implements the previously-unhandled SetExpression request (used
for inline watch editing) and advertises the corresponding DAP
capabilities.
@codspeed-hq

codspeed-hq Bot commented Jul 14, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 31 untouched benchmarks


Comparing feat/dap-conditional-breakpoints-watch-expressions (cda7c00) with main (5ee8974)

Open in CodSpeed

…ession

Replace the hand-rolled ">= N"/"== N" prefix parser with the same
eval_debug_expr path already used for condition and log_message, binding
hit_count in scope. A bare number is still shorthand for "hit_count >= N",
but any other string is now a full mq expression that can also reference
other in-scope variables, e.g. "hit_count >= 2 && x == 4".
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant