Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

breakpoints #15571

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from
Draft

breakpoints #15571

wants to merge 6 commits into from

Conversation

colin-i
Copy link

@colin-i colin-i commented Mar 14, 2024

The scope was to stop at instructions and to inspect variables there. This can help for a debugger. My lib is doing actionscript/avm1 so no avm2 plans at this moment for me.

Desktop example in file "a.txt". Is my first rust code, right now is not doing the same for web but for me desktop build is enough. Web example in file "test.txt".

I pulled with write access if you want to modify something.

a.txt
test.txt

@colin-i colin-i force-pushed the test branch 3 times, most recently from 7d67fa2 to 903cf68 Compare March 15, 2024 06:59
@torokati44
Copy link
Member

Hi, and welcome!
Thank you for submitting the PR, and we're really sorry that you heard nothing back so far.
The reason for this is that unfortunately we don't think this approach is workable, and nobody felt like disappointing you with this news.
The main concerns were:

  • putting the console-interaction logic directly in the middle of the interpreter main loop function is not that nice
  • some kind of stop-the-world debugger that blocks the engine entirely is not inherently a blocker - if better designed, this could be usable for some cases. the issue is that this also blocks the UI so we can't use any other debugging infrastructure we already made
  • and while we're not currently sure exactly what this better design would be, it might be a bit closer to this: [POC] Debugger #9373

Thank you for your understanding, and again, sorry!

@colin-i
Copy link
Author

colin-i commented May 10, 2024

Hi, and welcome! Thank you for submitting the PR, and we're really sorry that you heard nothing back so far. The reason for this is that unfortunately we don't think this approach is workable, and nobody felt like disappointing you with this news. The main concerns were:

* putting the console-interaction logic directly in the middle of the interpreter main loop function is not that nice

* some kind of stop-the-world debugger that blocks the engine entirely is not inherently a blocker - if better designed, this could be usable for some cases. the issue is that this also blocks the UI so we can't use any other debugging infrastructure we already made

* and while we're not currently sure exactly what this better design would be, it might be a bit closer to this: [[POC] Debugger #9373](https://github.com/ruffle-rs/ruffle/pull/9373)

Thank you for your understanding, and again, sorry!

I am writing the assembly and have to block Ruffle and see the state of the variables at whatever ACTIONRECORD I want, and the fastest way was this, of course with command line or web flags if the user want to do this.

I am only debugging my ActionSWF and my games, this pull is more like a draft and to see if I can find another approach and at this moment it is the best option for me.

@danielhjacobs danielhjacobs marked this pull request as draft May 13, 2024 14:15
@danielhjacobs
Copy link
Contributor

As per the comment, I have converted this PR to a draft as a middle ground between closing it and keeping it open where it can get confused with the pull requests that do need to be reviewed in their current state.

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.

None yet

3 participants