I would be great to have remote debugging enabled to facilitate web application debugging. Where the debugger is initialized in the application and then pudb is able to attach to the process.
Agreed, that would be useful. Unfortunately, I don't have the spare cycles to do it at the moment.
If you can point me in the direction of where/how you would approach it, I would be happy to fork it and see what I can come up with. If anything meaningful arises, I will send you a pull request for your review.
I can see two possible routes. The first one would depend on rpdb2, which is the remote debugging backend behind winpdb. rpdb2 is apparently also a much faster debugger than bdb (which underlies pudb). The downside of this is GPL2-only licensing, but I don't think I'd mind.
The other would be to roll your own RPC layer in between pudb and the server process.
In the rpdb2 case, I'm not sure how much tweaking pudb variable view might need. In either case, I think it's preferable to do data view rendering server side.
(Nearly) all the code you'd need to modify is in pudb/debugger.py. UI and debugger are (somewhat) well-separated in that file. I'd be happy to support you if questions arise.
Is pyro4 of any use as an RPC layer? How might the tty output get to the appropriate client if the application calls set_trace from it's own thread? The flow of how pdub gets output back to the terminal in the case of local debugging is a little out of my reach so far. Looking for clues.
Was remote debugging implemented already? Is there any news about that?
No progress for now. Thanks for checking.
May I contribute somehow?
How do you think, is there reason to implement such feature?
I don't know how debugging overall works and for now doesn't imagine how everything should be implemented but I would like to try.
@atykhonov You can try your hand at this, sure.
It's not a high priority for me, but I'd be happy to consider a patch that implements this.
I think it might be a rather invasive operation to realize this feature. It might be best to start with rpdb2 (or something like it, because of the GPL/MIT license mismatch). Ditching bdb entirely might not be a bad idea--it's a pretty poor API...
Why not rpdb? https://github.com/tamentis/rpdb
I created a new project that allows you to access your pudb from a remote device.