What action(s) are recommended in such a situation?
Here are some actions I considered, but can't quite figure out if they're optimal/adequate to open source mentality:
- Forking the repo. I fear I might be stuck if the main repo regains traction and I can't PR my possibly many new features. I seriously wanted to continue contributing to the repo; should I somehow try and make my fork the more popular one? How?
- Looking for a new similar library. This is obviously always an option, but it's not always possible.
- Letting people know. Regardless of how upset I may be, I would very much like to prevent this happening to other devs who consider contributing to the repo. Should I try to raise awareness about it? How? Should I just move on?
This answer makes me believe that the best option is to make a competing fork for social reasons, but I'm unsure given the blocking from the main organization.
Any past experiences (with results) would be helpful.
Context:
See my specific context below. Spoilers because although I think it's relevant to the question as an example, I don't want it to be seen as a rant or be the main focus of this post.
In the past few months, I've been trying to contribute to a public repository (this one) with a relatively inactive maintainer. After my first pull request, the maintainer kindly asked me to write tests for my new feature: "Thank you for your contribution. This will need tests and a minor change to make the error sniffing more defensive, but it's a great start." They've deleted the original issue (#37), but in it I replied that I hadn't seen similar tests from them on a similar feature, and didn't know how to make one myself. Few months later I push a second PR to increase coverage of the first one I did, and the maintainer asks me the same question, to which I reply (slightly bluntly) the same thing: I didn't know how. They/he proceeded to block me from the organization, close the issue, redo my code in a way that doesn't work, and I am now stuck in this situation.