GithubHelp home page GithubHelp logo

Comments (2)

awto avatar awto commented on May 26, 2024

Yes, unfortunately, the debugger doesn't work well when runtime calls some user functions synchronously. The breakpoint releases the main thread so readline thinks the event handling is done and it can proceed with something else.

I'm going to release the next major update in a couple of weeks. It will work a bit better - at least it will stop on the breakpoints. However, it won't stop the readline, so it will proceed to output the lines to process.stdout even when stopped on a breakpoint.

However, even now breakpoints should work when in time-traveling mode. If you enable time-traveling, execute your program till the end, and after go back and forward everything breakpoints should work. With other advantages, like you don't need to restart the process.

There are a couple of solutions for non-time-traveling modes but in longer-term plans. For example, we can transpile embedded node modules (if they are in JS) this way everything will work immediately. Or we can try to block the main thread instead of releasing(#10) it, etc. But I cannot give any estimates for these features. If you wish to contribute anything I'll be happy to help.

from effectfuljs.

hcnode avatar hcnode commented on May 26, 2024

Thank you for so detail explain!

I have not used the time-traveling mode yet, it sounds AWESOME! I will try it!

from effectfuljs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.