nemequ / hedley

A C/C++ header to help move #ifdefs out of your code
https://nemequ.github.io/hedley/
Creative Commons Zero v1.0 Universal
768 stars 50 forks source link

Consider an alternative to CC0-1.0 #56

Open musicinmybrain opened 2 years ago

musicinmybrain commented 2 years ago

The CC0 license is becoming increasingly challenging for some users.

The Fedora Project recently announced that it will not allow new packages with CC0-licensed code (as opposed to content):

The reason for the change: Over a long period of time a consensus has been building in FOSS that licenses that preclude any form of patent licensing or patent forbearance cannot be considered FOSS. CC0 has a clause that says: "No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document." (The trademark side of that clause is nonproblematic from a FOSS licensing norms standpoint.) The regular Creative Commons licenses have similar clauses.)

It is not yet clear what will happen with existing CC0-licensed code in the distribution. (I maintain the hedley package in Fedora Linux.) About hedley in particular, Richard Fontana writes:

For hedley, this would be an entirely sensible use of CC0 if CC0 were actually suitable for code. If it isn't any trouble I'd encourage you to see if the upstream maintainers would be open to relicensing under something else (MIT-0, Unlicense, etc.). Alternatively, this is the type of code use of CC0 for which a policy exception might be appropriate.

Based on https://github.com/nemequ/hedley/issues/52, this isn’t the first time the CC0-1.0 license’s explicit non-grant of patent and trademark rights has caused concern for potential users. With the Fedora Project’s decision and the general winds of change in perception of this license, it seems like more and more users are likely to encounter problems with the choice of license.

Are you open to the idea of relicensing, or dual-licensing, under another very-permissive license? MIT-0 seems to be widely used and accepted these days.

nemequ commented 4 weeks ago

Wow, I didn't realize someone packaged this up for Fedora, thank you! I use Fedora on my personal machines, so this is great news for me as a user, too :)

I'm completely open to something here. I just want to make Hedley as easy and painless to use as I can. I know that there have been some concerns raised about CC0 with software, so if changing the terms helps I'm open to it.

MIT has been my go-to open source license for a while, so MIT-0 sounds like a pretty good choice to me.

As for dual-licensing, I guess it would be pretty on-brand for this code to have multiple licensing implementations :laughing:! I think my biggest concern is that a license change is similar to an API break, and I have made some pretty strong promises around not breaking the API. That would ensure that any current users aren't disturbed.

I don't suppose you know of some boilerplate text that could be used for dual licensing? Or how to handle the SPDX bits?

mr-c commented 3 weeks ago

Hey @nemequ , we also have CC0 snippets in SIMDe. If you comment your approval at https://github.com/simd-everywhere/simde/issues/999 I'll handle the text changes on the SIMDe side.