Raku / Raku/whateverable

New bot: Breakpointable

Open
#298 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

✨new idea!✨
Dominant language
Raku
Stars
19
Forks
16
PR merge metrics
No merged PRs in 30d

Description

<timotimo> new bot idea
<timotimo> breakpointable :)
<timotimo> you'd pass a list of filename:linenumber pairs and a piece of code or url, the bot would attach a debug remote to the moar process, set up the breakpoints, and count how often each breakpoint gets hit and what different unique backtraces there are for it
<timotimo> sounds good?
<timotimo> the breakpoint counts can be optional, too, since the api differentiates that
<timotimo> er, i mean backtrace counts
<timotimo> extra bonus points: run the whole rakudo spec test suite and aggregate counts over all test files :)
<timotimo> not actually sure we need that
<AlexDaniel> maybe?
<AlexDaniel> we have 16 bots, and undersightable is 17th
<AlexDaniel> I myself don't even remember what all of them do, so breakpointable is maybe over the top a bit
<AlexDaniel> timotimo: maybe if you make a nice module for your breakpointable idea, then we'll just make a bot that uses that module…
<timotimo> there is a module
<timotimo> it's called MoarVM::Remote :)
<timotimo> https://github.com/edumentab/p6-moarvm-remote/blob/ffd24e8890a404fad921d089954378eefc4353a6/lib/MoarVM/Remote.pm6#L362 - call this, you'll get a hash with a notifications key that'll be a Supply. make sure to send False for suspend so it won't stop when it hits this breakpoint
<timotimo> run moar with --debug-port=a-free-port-number --debug-suspend so you can set the breakpoint before code runs
<timotimo> then call $remote.resume(*)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the referenced MoarVM::Remote breakpoint API and the notes about running moar with --debug-port and --debug-suspend. Determine how a bot would accept filename:line pairs and code or a URL, attach to the process, resume it, and aggregate breakpoint notifications and unique backtraces. Done would mean a defined bot workflow that reports those results, though no repository entry point or tests are identified.

Written by the indexing model from the issue text.

Assessment

Domain
devtools
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.