Week 1 — My First Contribution to Hacktoberfest 2025

This week, I started my Hacktoberfest 2025 journey by contributing to pwndbg, a Python-based GDB extension for debugging and reverse engineering. I chose this project because it has an active community, a detailed contribution guide, and uses tools lik…


This content originally appeared on DEV Community and was authored by kkrishnan10

This week, I started my Hacktoberfest 2025 journey by contributing to pwndbg, a Python-based GDB extension for debugging and reverse engineering. I chose this project because it has an active community, a detailed contribution guide, and uses tools like pytest, isort, and black to maintain clean and consistent code.

After registering on Hacktoberfest, I forked the repository, cloned it locally, and created a new branch using git checkout -b issue-3270-robust-dprintf. Since I use macOS, I installed Determinate Nix to emulate a Linux-like environment. Once inside the shell, I installed dependencies with python -m pip install -e ., which set up the project for local development.

My assigned task, described in Issue #3243, was to implement an MVP dp command, similar to GDB’s dprintf. The goal was to print formatted output while debugging without modifying program state. I added a new file called dp.py that introduced support for a format string, a --tid option to display the thread ID, and a --depth option to show call-stack depth.

After writing the feature, I verified the code style using isort, black, and ruff. I then ran the unit tests with pytest -q tests/unit_tests -k "not test_readline_not_imported". All 46 tests passed successfully, with only 3 expected skips on macOS. This confirmed that my code worked properly and didn’t break existing functionality.

Finally, I committed my work using
git commit -m "feat(dp): add MVP dp command (basic formatting + --tid & --depth) (Fixes #3243)"
and pushed it with git push -u origin issue-3270-robust-dprintf --no-verify. The pull request was created, and my commit is available at 22477d1.

Through this contribution, I learned how large projects maintain high standards with automated linting, unit testing, and review workflows. I also gained practical experience using Nix on macOS and following open-source conventions like clear commit messages and linked issues. Overall, this was a rewarding first contribution, and I plan to continue improving the dp command by integrating it with GDB’s native dprintf in future work.


This content originally appeared on DEV Community and was authored by kkrishnan10


Print Share Comment Cite Upload Translate Updates
APA

kkrishnan10 | Sciencx (2025-10-13T21:08:06+00:00) Week 1 — My First Contribution to Hacktoberfest 2025. Retrieved from https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/

MLA
" » Week 1 — My First Contribution to Hacktoberfest 2025." kkrishnan10 | Sciencx - Monday October 13, 2025, https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/
HARVARD
kkrishnan10 | Sciencx Monday October 13, 2025 » Week 1 — My First Contribution to Hacktoberfest 2025., viewed ,<https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/>
VANCOUVER
kkrishnan10 | Sciencx - » Week 1 — My First Contribution to Hacktoberfest 2025. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/
CHICAGO
" » Week 1 — My First Contribution to Hacktoberfest 2025." kkrishnan10 | Sciencx - Accessed . https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/
IEEE
" » Week 1 — My First Contribution to Hacktoberfest 2025." kkrishnan10 | Sciencx [Online]. Available: https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/. [Accessed: ]
rf:citation
» Week 1 — My First Contribution to Hacktoberfest 2025 | kkrishnan10 | Sciencx | https://www.scien.cx/2025/10/13/week-1-my-first-contribution-to-hacktoberfest-2025/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.