CC0 is a horrible thing to use for software. It seems great, but it specifically does not give patent rights. Compare that to MIT which implicitly does so. CC0 specifically says it does not.
Correct. They’re bad. And if someone releases code under CC0 that has patented stuff in it you may be liable for using their patent without permission because CC0 says in section 4a,
No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
Compare that to MIT which is considered to implicitly grant patent rights by saying you may deal in the software without restriction. Apache specifically gives you explicit patent rights in section 3.
Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
So the problem is that CC0 in it’s public license fallback specifically says that it does not grant patent rights.
CC0 is a trap for software. Please avoid it. Please encourage others so avoid it.
To the extent of my knowledge, the only public domain dedication with permissive license fallback that is approved by both FSF and OSI is the WTFPL. Which is also a crayon license. Public domain is a weird concept and not all jurisdictions have it and not all jurisdictions allow you to manually put things into it. This is why they need the permissive license fallback. You’re better off using a well known and well understood permissive license.
The US government doesn’t (to my knowledge at least) have copyright protections so MIT wouldn’t be possible. BSD 0-Clause is just better because e.g. Austria doesn’t allow you to cede copyright to the public domain and CC0 directly mentions the public domain in the terms of the license.
Interesting, SPDX does not list 0BSD as FSF approved, but FSF does approve it. This isn’t the first problem I’ve seen with SPDX’s list. They say CC0 is FSF approved but FSF only says it is approved for things besides code.
CC0 is a horrible thing to use for software. It seems great, but it specifically does not give patent rights. Compare that to MIT which implicitly does so. CC0 specifically says it does not.
Could you explain why this is bad? Software patents aren’t a great thing, are they?
Correct. They’re bad. And if someone releases code under CC0 that has patented stuff in it you may be liable for using their patent without permission because CC0 says in section 4a,
Compare that to MIT which is considered to implicitly grant patent rights by saying you may deal in the software without restriction. Apache specifically gives you explicit patent rights in section 3.
So the problem is that CC0 in it’s public license fallback specifically says that it does not grant patent rights.
CC0 is a trap for software. Please avoid it. Please encourage others so avoid it.
To the extent of my knowledge, the only public domain dedication with permissive license fallback that is approved by both FSF and OSI is the WTFPL. Which is also a crayon license. Public domain is a weird concept and not all jurisdictions have it and not all jurisdictions allow you to manually put things into it. This is why they need the permissive license fallback. You’re better off using a well known and well understood permissive license.
Thank you for the through explanation! That was very helpful
Correct. You release something under CC0, someone else sees it, patents it, and sues you.
The US government doesn’t (to my knowledge at least) have copyright protections so MIT wouldn’t be possible. BSD 0-Clause is just better because e.g. Austria doesn’t allow you to cede copyright to the public domain and CC0 directly mentions the public domain in the terms of the license.
Interesting, SPDX does not list 0BSD as FSF approved, but FSF does approve it. This isn’t the first problem I’ve seen with SPDX’s list. They say CC0 is FSF approved but FSF only says it is approved for things besides code.
https://www.gnu.org/licenses/license-list.en.html
https://spdx.org/licenses/