-
Notifications
You must be signed in to change notification settings - Fork 516
Description
history
gdbgui was started and developed by me in my spare time. It has grown in scope, and gotten more users than I ever expected from all over the world, which is very exciting 🌎. It has been really fun and rewarding to make, and I'm proud of how many developers it has helped to understand and debug their application.
I have had some help from the community to iron out bugs and some corner cases, but the majority of workload and features have been added by me in my personal time. And the reality is this is a non-trivial application that has taken a lot of work and focus to get to where it's at. Nevertheless it is a side-project that provides no financial incentive for me to spend my nights and weekends working on it, especially now that I no longer use it at my job.
current status
gdbgui is stable and useful to a wide range of gdb users.
future development
I will still be reviewing Pull Requests and answering questions, but the majority of changes and improvements to gdbgui will be made by you, the community.
Below I list what I consider the highest impact issues to be. All of these issues have the help wanted
label, which you can filter a search on.
If you have interest in making any of these happen, please reach out and get the ball rolling! I, and many users, would appreciate your help 🙌. gdbgui is a full stack application, but don't be afraid to help if you are only comfortable with one part of the stack. For the most part, the abstractions allow you to work in one part of the code without needing to understand others.
Better Usability
These are features that will directly make gdbgui more useful to end-users.
- Use a real pty in the frontend. This will be a dramatic usability improvement and open up new use cases. add interactive pty to frontend #295
- Use text editor in frontend use interactive text editor in frontend #308
- CTRL+P to search for file Source file search overlay similar to sublime/atom/chrome debugger's ctrl+p #192
- Clean up user interface after Use Tailwind css and replace all custom css #312
Better Engineering
These will make development easier, improve performance, keep things on modern and more maintainable toolchains.
- Convert all files to .ts and add more type annotations Add more typescript annotations #309
- Replace splitjs library with css grid Replace splitjs library with css grid #310
- Use Tailwind css and replace all custom css Use Tailwind css and replace all custom css #312
- Replace autocomplete library Rewrite autocomplete library #311
- Use asyncio on backend so that pygbmi is event-based rather than running in a loop and pausing for a short period of time add async interfaces pygdbmi#41
- use
-list-feature
instead of parsing output use gdb's-list-feature
instead of heuristics #313 - use modern async backend use modern async backend #315