premake-core
premake-core copied to clipboard
Add interactive debugger.
What does this PR do?
Adds a new interactive debugger based on debugger.lua.
Premake already contains some remote debugger integration (MobDebug), however this PR introduces an integrated debugger, any call to dbg()
will launch the user into an interactive GDB-like TUI shell to allow interactive debugging on the spot.
How does this PR change Premake's behavior?
New dbg()
API when PREMAKE_DEBUGGER
is enabled.
Anything else we should know?
There is an --interactive
flag already which overlaps some of the inpect functionality available in the debugger.
Also the MobDebug --debugger
flag which also provides some of the functionality, albeit in a different package.
Can we just enable this debugger by default?
If not, we could re-purpose the debugger flag and allow passing a kind --debuger=remote/mob/builtin
.
Did you check all the boxes?
- [x] Focus on a single fix or feature; remove any unrelated formatting or code changes
- [ ] Add unit tests showing fix or feature works; all tests pass
- [x] Mention any related issues (put
closes #XXXX
in comment to auto-close issue when PR is merged) - [x] Follow our coding conventions
- [x] Minimize the number of commits
- [x] Align documentation to your changes
You can now support Premake on our OpenCollective. Your contributions help us spend more time responding to requests like these!