How to get started on fixing a bug
Hello. I am a newbie dev, please forgive me if this question is a bit vague.
I have done CS courses in the past but all of them involve individual script files which are executed and the end result is to print something to a console. This large program spanning hundreds of interconnected files has left me very lost. My career thus far have just been making Python scripts for data cleaning and analysis so this is kind of a new world for me.
I've been looking through Musescore documentation and the GitHub Wiki but I'm really lost on how to get started on bug fixes. There's very high level overview stuff such as this but it's not helping me traverse the hundreds of files in the code to figure out what function does what. The code also barely has any comments, which isn't helping...
I've built the latest debug build and am watching the console as I recreate bugs. So I have a names of some functions that are executed, but I don't really know what to do with the information.
So how do you guys get started on open source development? Say I target a bug, such as this one. Once I can recreate it in the debug build, how do I target it in the source code and fix it?
Welcome! Have you read the development documentation (see Contribute menu above)? In particular, see the links to the Discord server, which is the best place to ask for help with things like this. But also, there are some descriptions of the file hierarchy that can help get started. One thing I recommend is to search closed issues of PR's on GitHub for a fix that seems likely to involve similar code, and check to see which files & functions that fix touched. Like in your case, it seems https://github.com/musescore/MuseScore/pull/15730 might be a good starting point.
In reply to Getting started on fixing a… by Anthony Lunt
And then in the middle of the night the code Pixies come along and fix the bug and everyone lives happily ever after.
The OP was not asking how to get a bug fixed; the question was how to become a code Pixie and do that magical fixing.