I have had experience with three open source projects where I created pull-requests to. My conclusion is that doing so is a big hassle.
Example #1: AsmJIT
I created an addon to the AsmJIT assembly generation framework which gave feedback about memory-location-sensity assembly output so that it could be fixed up. With this power I can create /DYNAMICBASE style PE executables from assembly.
The author of AsmJIT entangled me into a discussion where he wanted to work on an text assembler. He claimed that my work had to be compatible with his vision before it were merged. Thus my pull is forever pending.
Example #2: Compressonator
Added support for Linux operating system.
The commercial guys at AMD, one of which is Navin Patel, have been pretty busy with things. Unfortunately they have never finished evaluating my pull request which is weird. I would assume that working code should be merged and one could easily work based on it. Since I am a student who just did it for fun I am stressed but will look how to get this up-to-date.
Example #3: SAO
pull request is ripperoni in pepperoni
Contribution of my PE executable parsing framework (PEframework) for SAO game loading so that everything was nicely documented.
iFarbod was not convinced of the necessity of my code so he declined it. I can fully understand that he wanted to do it himself to learn so I let it pass by. Not really sure if he had any code quality objections for my work. I was sort of disappointed. But okay.
Conclusion: think twice before you get into this hassle.