It's a sad irony that CLAs essentially put the project owner in the exact same position as the unicorn that screwed them over, by screwing over those downstream who make contributions, if/when they monetize the project.
I came across some Scheme/Racket/? library recently that attempts to quantify contribution levels and distribute any received funds fairly based on that. Unfortunately, I can't find it at the moment, but it was a cool idea.
You mean I screwed over those 0.1% of commits in EmailEngine (because the other 0.1% is from the Github Actions bot writing the changelog)? Everything else is my own code.
For over 14 years, I've been actively developing Nodemailer, a hugely popular project. There has been no CLA in place, and the main outside commits I get are typo fixes during Hacktoberfest. This is why I'm still the owner of 98% of the committed code in Nodemailer. Usually, if I do not fix or build something, no one else will either.
I'm not picking on you, FOSS projects aren't really set up for anything like shared revenue yet, and almost nobody's thinking about it.
But in the future, monetized FOSS projects need to pay out to their contributors. By default, contributors own copyright to the code they share, and forcing them to surrender that for free won't be acceptable.
The problem for the developer considering a CLA is that if you take any contributions at all, you now have a community of people who A) understand your source code and B) have had their contributions rolled into your proprietary product, possibly against their expectations and possibly leaving them rather upset.
With 0.1% of commits it's not a likely problem, but if developers are making significant contributions then there's a good chance they'll fork your product as of the last LGPL commit and keep developing it as a direct competitor. It's safer to just not take contributions at all.
I would not say that in your case, but the problem is that if a project has a CLA there could be a lot of commits from other people and then it would be screwing them over.
> You mean I screwed over those 0.1% of commits in EmailEngine (because the other 0.1% is from the Github Actions bot writing the changelog)?
I mean... yeah? Correct me if I'm wrong but you profited off their labor without compensating them, right? Why should the number of people you did that to make it less wrong? Obviously a corpo making bajillions of dollars without paying you sucks, but by sheer number of people negatively affected, it's still the same lol, in this case you're just the one with the bag, instead of a corporation.
Well, I guess you're right in a way. While there are no meaningful outside commits in EmailEngine, there are _some_ commits, even if these have minimal impact, by people who do not get paid for it, while I do.