12
\$\begingroup\$

It is should be well known that code posted to Code Review are licensed under CC-BY-SA.

I am wondering: Are there any licenses that are compatible with this licensing? Is it possible to use one license on the GitHub repository (for example "Simplified BSD" license) but still post the code to Code Review and ask for reviews?

\$\endgroup\$
15
\$\begingroup\$

We require that the asker posts code that they have written themselves. In that case it can be assumed that the asker owns the copyright for that code and can license that code to Code Review under CC-BY-SA. For this it is irrelevant whether that code was already published elsewhere under a different license; one creative work can be dual-licensed under multiple licenses.

If the poster were not the author of the whole code in question and would therefore not be the exclusive copyright holder for the whole code, then the poster must have the right to sublicense the part of the code not written by them. Sublicensing is generally allowed in the more liberal licenses such as various BSD or MIT variants, but is restricted by the GPL. As a result, the various CC licenses are generally incompatible with the various GPL versions.

Simple Examples:

Freddy has forked a GPL-licensed project on GitHub. He refactors a part of the project and wants Code Review to criticise the refactored code.

This is not OK: The refactored code is a derivative work of GPL code, and cannot therefore be licensed under an incompatible license such as CC-BY-SA without the (written) consent from all contributors for the code in question.

Variant: The project used a liberal license such as a BSD license variant. Then, Freddy may re-license that code under CC-BY-SA as long as the terms of the original license are still respected – i.e. the original license header is included in the question.

Annie has created a new project and published it on Bitbucket. She posts an interesting part on Code Review for it to get some feedback.

This is OK: The license is wholly irrelevant since the copyright holder may republish the work under a different license.

Variant: The project has attracted additional contributors, and their contributions have been merged. Then, this is to be treated as if Annie had forked a pre-existing project, and the project's license becomes relevant.

Less Simple Examples:

Julia has written some code for her employer which is published under the GPL (or really, any other license, or not published at all). She wants a code review for that code from this site.

This is probably not OK. Employment contracts frequently feature copyright assignment to the employer. Therefore, Julia is not the copyright holder and can't issue a license for that code. Julia's employer would have to explicitly consent to the code being republished under an incompatible license.

Variant: The code was published by the employer under an MIT license. Then anyone including Julia may sublicense the code.

Max has added a feature to a GPL-licensed open-source project. Before he issues a pull request, he wants some feedback from this site, but only for one function he completely wrote from scratch.

This is pretty tricky. The new feature will likely depend on the other (GPL-licensed) parts of the project and would therefore have to be GPL-licensed itself. Even though the function was written from scratch, it would likely constitute a derivative work since it's useless without the rest of the project. As a result, the code could probably not be posted on Code Review.

Variant: The project used a BSD license. Then Max may post his code to get feedback.

To do: contemplate CC-BY-SA ↔ LGPL compatibility.

\$\endgroup\$
  • 1
    \$\begingroup\$ Your answer is aligned with my understanding (IANAL, etc.), except for the 'Max' example. In copyright dealings, unless otherwise noted, the copyright of the code fragment written by Max, regardless of it's dependencies, is wholly owned by max. He can share and license the copyrighted fragment in any way he wants. Only when that code fragment (in source, or compiled form) is distributed with other code, is there a requirement to get the permission of all the other contributors too. \$\endgroup\$ – rolfl Dec 13 '14 at 15:39
1
\$\begingroup\$

Creative Commons have their own List of compatible licenses

At the time of writing there is two licenses that are deemed compatible (with BY-SA 4.0), namely the Free Art License v1.3. and GPLv3 (which only works one-way)

They also have a list of rejected compatibility proposals right below the list of compatible licenses, which as of now is empty

New Licenses for the compatibility may be proposed to the cc-commitee by posting to their mailinglist under their process and criteria for determining compatibility

\$\endgroup\$
  • \$\begingroup\$ On the "List of compatible licenses" page, the licenses compatible with CC BY-SA 3.0, which is the relevant license for Stack Exchange content, is an open-ended list. \$\endgroup\$ – 200_success Jan 12 '15 at 22:28
  • \$\begingroup\$ Was this not clear from my answer? Yes the list is open ended. Currently there are no items in the list though. Additionally content licensed under 3.0 can be relicensed under CC-BY-SA 4.0 which is where the FAL is compatible \$\endgroup\$ – Vogel612 Jan 12 '15 at 22:35
  • \$\begingroup\$ I'm not contradicting what you said, just clarifying. \$\endgroup\$ – 200_success Jan 12 '15 at 22:37
-2
\$\begingroup\$

Disclaimer: I'm obviously not a lawyer.

The CC-BY-SA reads:

You are free to:

Share — copy and redistribute the material in any medium or format Adapt — remix, transform, and build upon the material for any purpose, even commercially. The licensor cannot revoke these freedoms as long as you follow the license terms. Under the following terms:

Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original. No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.

Which is pretty dang permissive. We can even turn around and use this content for commercial gain (given proper attribution to the original author.

This sounds an awful lot like the MIT license to me. I believe they are compatible.

The MIT License (MIT)

Copyright (c) [year] [fullname]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

\$\endgroup\$
  • \$\begingroup\$ You're here quoting the "readers digest" version of CC-BY-SA, which is not the actual license. Additionally the "ShareAlike"-clause is not quite as permissive as you seem to think. \$\endgroup\$ – Vogel612 Jan 12 '15 at 18:01
  • \$\begingroup\$ @Vogel612 do you have any details about that? Not only am I curious, I'd like to update or delete my answer if I'm blatantly wrong here. \$\endgroup\$ – RubberDuck Jan 12 '15 at 22:32
  • \$\begingroup\$ If I understand correctly MIT license does not have an attribution clause in any way. In addition to that derivative works of CC-BY-SA content must be licensed under SA. A relicensing to MIT is not possible from my understanding, because MIT is too permissive. \$\endgroup\$ – Vogel612 Jan 12 '15 at 22:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .