Well, then you have code written for a company on company and code written under a contributor agreement.
A lot of code that ended up under free licenses has been proprietary first and while they cannot revoke the free licenses from already released code they can make their next release non-free as long as they haven't accepted outside contributions without a suitable contributor agreement.
> Well, then you have code written for a company on company and code written under a contributor agreement.
Not all contributor agreements are equal, and I would recommend choosing which projects you will not contribute to based on their CLAs. If they ask you to give them copyright without good reason, they are preparing to fuck you over. Ironically, this is why I will not contribute to GNU because they require copyright assignment so they have a higher chance of winning conservancy cases (IANAL, but I have one in my family and this is bullshit in my country but may be true in the US, so I feel conflicted about it).
> A lot of code that ended up under free licenses has been proprietary first and while they cannot revoke the free licenses from already released code they can make their next release non-free as long as they haven't accepted outside contributions without a suitable contributor agreement.
The only example I can think of is OpenSolaris (which required contributors to sign a CLA that assigned copyright to Sun/Oracle). Most modern projects don't work like that, and if you have a copyleft license, a company could not legally create a proprietary fork and distribute it.
Besides, if that happens you end up with free software forks (illumos in the OpenSolaris case) and everyone moves to using that.
A lot of code that ended up under free licenses has been proprietary first and while they cannot revoke the free licenses from already released code they can make their next release non-free as long as they haven't accepted outside contributions without a suitable contributor agreement.