ipfs / kubo

An IPFS implementation in Go
https://docs.ipfs.tech/how-to/command-line-quick-start/
Other
15.83k stars 2.96k forks source link

Re-license go-ipfs to MIT + Apache 2 #6302

Open momack2 opened 5 years ago

momack2 commented 5 years ago

@ianjdarrow has done some research into open-source licensing and determined that dual-licensing as MIT and Apache 2 is a best practice. Quoting from his writing elsewhere:

This has two major benefits:

  • There are concerns in the open source community about whether the MIT license leaves users vulnerable to patent infringement claims. We think the pure legal risk is small, but the way the open source community interacts with our project is really important. It makes sense to pick the license that makes the largest number of people comfortable.
    • There's now no reason to adopt a separate DCO, since the Apache-2 license grant addresses the same issue.

Why use a dual license, instead of just Apache-2? The Apache-2 license is incompatible with the GPLv2 license, which includes things like the Linux kernel. With a dual license, GPLv2 projects can just use the MIT license instead. Our goal is to make our software available to as many projects as possible, so we'd rather adopt a licensing scheme that doesn't exclude anyone.

What we need to do:

I have updated the licenses in https://github.com/ipfs/go-ipfs/pull/6301, the next step is to get an explicit OK from our current and past contributors to consent to the relicensing. To keep track of things, below is a contributor sign-off list. Contributors can either check the box next to their github handle, or comment on this issue thread with the following text:

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

Contributor sign-off:

Mikaela commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

(Even if I only added two words and an URL to one file in https://github.com/ipfs/go-ipfs/commit/4470b83644ac72e79171a3aee6c5e5cf1bbb3643, so I don't think my approval is very important.)

MichaelMure commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

lidel commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

dignifiedquire commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

torarnv commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

andrew commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

zmackie commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

hackergrrl commented 5 years ago

This is fine by me.

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

chriscool commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

rob-deutsch commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

wking commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

Although future contributions would be covered by the usual docs, right? So I don't think my commitment for future contributions matters as far as this PR goes.

marten-seemann commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

dirkmc commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

RichardLitt commented 5 years ago

Thanks, @momack2.

Can you explain why MIT is not sufficient anymore?

kpcyrd commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

daviddias commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

PS: I've updated my handle from @diasdavid to @daviddias, so my approval is valid for both handles (which I still own)

daviddias commented 5 years ago

Btw, great post explaining the Permissive License Stack

@RichardLitt ^^

Luzifer commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

alanshaw commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

lanzafame commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

overbool commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

cryptix commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

keks commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

achingbrain commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

eingenito commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

whyrusleeping commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

dylanPowers commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

kevina commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

Kubuxu commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

pfista commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to chose either at their option.

kulla commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

tv42 commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

kjzz commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

RichardLitt commented 5 years ago

Thanks, @daviddias. That was some very useful context.

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

mateon1 commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

PlayerWithoutName commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

leerspace commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

cboddy commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

mateon1 commented 5 years ago

I noticed a few recent commits still using the old sign-off messages (fa479f7a8a0abbc35b7dcffbed2d8853e42b364f, 7340eb5e95d0bb9df5d9b04d6497576f02e21fab, ...), and some commits with no sign-off lines at all (f2d01f5201cd3a20130e20bcdba25b6b53300c63, 227da14e58307bc681bd91b49d61071280c4b937). What should be used for signing off commits from now on?

The current sign-off is:

License: MIT
Signed-off-by: {name} <{email}>

Should this be changed to License: MIT/Apache-2.0? Should sign-offs still be mandatory?


BTW, gitcop's warnings about the sign-off point to a dead link, the file the bot links is contribution-guidelines.md in the community repo, but the file is now called CONTRIBUTING.md

Stebalien commented 5 years ago

Should sign-offs still be mandatory?

Signoffs are no longer mandatory and contributions to a project automatically fall under that project's license per GitHub's terms of service (https://help.github.com/en/articles/github-terms-of-service#6-contributions-under-repository-license).

We've also killed off GitCop.

verokarhu commented 5 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

eminence commented 4 years ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

daviddias commented 4 years ago

Is this doc https://github.com/ipfs/go-ipfs/blob/master/docs/developer-certificate-of-origin still necessary with the new re-licensing? In another words, can I delete it?

Stebalien commented 4 years ago

I think we should keep that. We've decided that we no longer need explicit sign-offs and technically GitHub has an automatic DCO for all contributions in the ToS but it can't hurt to keep that.

fgasperij commented 4 years ago

Why go this way instead of GPL v2?

willscott commented 4 years ago

@fgasperij see https://protocol.ai/blog/announcing-the-permissive-license-stack/

zramsay commented 1 year ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

edisonlee55 commented 1 year ago

I license past and future contributions under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.