I’ve been there, but over the years I’ve gotten better at avoiding being in this situation.
If you are implementing something for yourself, and merging it back upstream is just a bonus, then by all means jump straight to implementing.
However, it’s emotionally draining to implement something and arrive at something you’re proud of only to have it ignored. So do that legwork upfront. File a feature request, open a discussion, join their dev chat - whatever it is, make sure what you want to do is valued and will be welcomed into the project before you start on it. They might even nudge you in a direction that you hadn’t considered before you started.
Be a responsible dev and communicate before you do the work.
That’s the fucking worst, when you put all this work into a free and open project only for the lead to be like “nah don’t like it”
Free and Open as in, free to do the work for them and Open for it to be rejected for almost no reason.
A project is in no way, shape, or form obliged to to accept and maintain your code, especially if it’s not a feature they want. If you want your feature so badly, maintain a soft-fork yourself. Don’t want to put in that effort yourself? Then why should the project maintainers?
Somebody please fork reprepro, there’s a super useful bugfix in one and a super useful feature in the other but I want both.
The bugfix is the zstd decompression-cancel race condition bug and the feature is multiple versions per package but they’re both super stale.
Maybe…
Maybe I can fork it…This is why I always ask if the maintainers are open to a PR first.
You made this?
Fork
I made this
Now everone expects you to be the maintainer. You get a lot of bug reports.
I once made a PR changing
a = f(b)
froma = "" if b == "" else f(b)
. About six months later still inpending review
. I get that people have their own shit but damn.edit) Sorry. Clarified the code.
And this is why I don’t contribute. Or at least I’ll ask a question about whether or not something would be a desired feature and if I don’t get a clear yes or no by someone who can actually approve a PR, I. ain’t. coding. shit.
You’re framing this as if it were something unusual. Unsolicited PRs are a no-go in my opinion. It’s just basic communication and collaboration to align with the maintainers whether a change is actually required or not.
This is how its supposed to be done anyway.
“closed by stalebot”