Here’s an interesting twist on open source funding: require all users to back the project on Open Collective, but only enforce that rule via social pressure. In other words, use an honesty policy:

It is an honesty system with no code or legal enforcement. When raising an issue or a pull request, the user may be checked to ensure they are a patron, and that issue/PR may be closed without further examination. If a individual or organization has no interest in the long term sustainability of Fody, then they are legally free to ignore the honesty system.

The software is MIT-licensed, so all of those liberal rules apply, but don’t expect to get your PR merged or your issue taken seriously unless you’re a patron.

You must be a Patron to be a user of Fody. Contributing Pull Requests does not cancel this out. It may seem unfair to expect people both contribute PRs and also financially back this project. However it is important to remember the effort in reviewing and merging a PR is often similar to that of creating the PR. Also the project maintainers are committing to support that added code (feature or bug fix) for the life of the project.

The project currently has 4 organizations and 10 individuals supporting it. What do you think those numbers will look like in 6 months or a year?

Get the latest news and podcasts for developers in your inbox, every week. We make it super easy to keep up with developer news that matters.

Refusing PRs that you actually want in the project seems like cutting your nose to spite your face.
Accepting PRs that add baggage because someone is a patron makes things worse for everybody.
I think there’s a pragmatic mid-way where you invest more time to build out features where your vision matches what patrons are working on, but still accept good contributions.