Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to MIT License #2054

Closed
cweagans opened this issue Feb 17, 2012 · 213 comments
Closed

Migrate to MIT License #2054

cweagans opened this issue Feb 17, 2012 · 213 comments
Labels
Milestone

Comments

@cweagans
Copy link

I'm wanting to include Bootstrap in a Drupal distribution that I'm working on. Because I'm using the Drupal.org packaging system, I cannot include Bootstrap because the APLv2 is not compatible with GPLv2 (which is what all code on Drupal.org must be licensed as, per our license policy: http://drupal.org/licensing/faq#q4)

I was wondering if you'd be willing to either release Bootstrap under another license (in parallel to the Apache license) that would be compatible with our packaging system, or license Bootstrap specifically to Drupal.org contributors under a compatible license.

@caniszczyk
Copy link
Contributor

I believe the code on Drupal.org is under the GPLv2 or later, which is fine.

"Apache 2 software can therefore be included in GPLv3 projects, because the GPLv3 license accepts our software into GPLv3 works." [1]

[1] - http://www.apache.org/licenses/GPL-compatibility.html

@cweagans
Copy link
Author

Nope - everything is licensed as GPLv2 right now. When the packaging system puts things together, it includes the GPLv2 license, and APLv2 cannot be relicensed as GPLv2.

@Crell
Copy link

Crell commented Feb 17, 2012

Drupal.org is GPLv2-and-later. We do not permit GPLv3-only code at this time. APL is only compatible with GPLv3, not v2.

cweagans, you may want to see if we can allow a GPLv3 library via the auto-packager for distributions. I'm not sure if that team will accept a GPLv3 library in that case. If not, then yes something GPLv2-compatible would be necessary.

@caniszczyk
Copy link
Contributor

I'm all for finding ways to make this work. There's pretty much no chance the bootstrap license will ever change. Is there a way we can have Drupal move to the newer version of GPLv3? http://www.gnu.org/licenses/gpl-faq.html#v3HowToUpgrade

I'd be willing to put in some cycles to talk to the right people over in Drupal land to make this work.

@cweagans
Copy link
Author

There's no chance of licensing it under an additional license? That is, it would be concurrently available under APL and (some other license that's compatible with our packaging system).

If not, I'd guess that Crell is at least one of the people to talk to - he's the licensing guy for the Drupal Association. He'd probably know who else to talk to about it. I imagine that there will be a significant amount of pushback on this, though...changing the license of Drupal and every single contrib project on Drupal.org is no easy task.

@Crell
Copy link

Crell commented Feb 18, 2012

Changing Drupal's license from GPLv2 to GPLv3 would be a very simple change administratively/legally and a monumental task culturally. It's not something that's going to happen any time soon, although I would like to see it happen eventually for various reasons.

@caniszczyk
Copy link
Contributor

I understand that pain well, isn't the GPL wonderful?

I would advise that the drupal.org community look at having module authors choose between the GPLv2 or v3 license, this would then allow folks to embed Apache licensed code into their projects without issues. The APLv2 is a very liberal license.

In the end, I'm all for making this work somehow. I mean, according the Drupal FAQ [1], you're able to redistribute Drupal under the v2 or v3 license of the GPL so I don't see why this is an issue to begin with.

[1] - http://drupal.org/licensing/faq#q1

@Crell
Copy link

Crell commented Feb 18, 2012

Because there are GPLv2-only libraries out there that people want to be able to integrate as well. :-) There's unfortunate subtly involved that I have the misfortune of having been the point person to sort out.

We want the code coming off of Drupal.org to always be legally compatible with code coming off of Drupal.org. Many modules bridge to other 3rd party libraries. Some of those are GPLv2 only, some are GPLv3 only. Therefore, to get the widest possible compatibility we require that Drupal.org code be GPLv2-AND-later. The option of which to use is made by the receiver, NOT the module developer. It cannot be, or else you could end up with a GPLv2-only module and a GPLv3-only module, both on d.o, and then that's just a total fail because you couldn't distribute them together.

Yes, this causes issues for APLv2 code. Bootstrap is not the first time we've seen this. At some point I do want us to move to GPLv3, but that is not on the table for the foreseeable future. Licensing changes for Drupal.org are not worth discussing here, as that boat takes too long to turn.

@cweagans
Copy link
Author

I suspected that a licensing change for Drupal.org code would be painful, but I had to hold out hope. So, given that, is there any chance at all of distributing Bootstrap under an additional license that might be a little more friendly to our packaging system?

I know of at least three projects (including mine) that would love to be able to include Bootstrap, but cannot due to the license. http://drupal.org/project/twitter_bootstrap and http://drupal.org/sandbox/rerooting/1429486 and http://drupal.org/project/droptracker. I suspect that more projects would use Bootstrap if it were easily included by our packaging system.

@mdo
Copy link
Member

mdo commented Feb 18, 2012

Let's ask @caniszczyk about this stuff.

@cweagans
Copy link
Author

He's been commenting on this issue already ;)

It would be really awesome if Bootstrap could be distributed under anything compatible with the GPLv2 license along with the current Apache license.

@mdo
Copy link
Member

mdo commented Feb 18, 2012

Totally missed that one! Sounds like it's not really an issue then?

@cweagans
Copy link
Author

@markdotto, I don't follow. It's still certainly an issue - please read all of the comments on this issue.

@caniszczyk
Copy link
Contributor

Changing the license of Bootstrap isn't practical given that the APLv2 is already a very permissive license and already allows Bootstrap to be embedded in all sorts of commercial and non-commercial applications. I would advise that the Drupal community take a better stance on adopting the GPLv3 and the mixing of libraries. Technically, Bootstrap can be considered a separate program (or in Drupal's case, a module) so mixing it shouldn't be an issue depending on your interpretation. Also, Bootstrap can be used by folks who run Drupal modules on their own server. It's only in the case of drupal.org that this is an issue.

It would be good to start turning the boat sooner than later. It's nice to give your users a choice in the matter.

@mdo
Copy link
Member

mdo commented Feb 18, 2012

Sorry, I meant to say that this doesn't sound like an issue we can resolve easily. To expand on that though, I'm all for anyone and everyone using Bootstrap. Licensing issues suck ass and I'd like to avoid any issue if possible. If @caniszczyk thinks it's kosher for us to have two licenses, so be it.

@caniszczyk
Copy link
Contributor

Technically everyone can given the terms of the APLv2, it's just that the GPLv2 puts drupal.org in a precarious situation since they are distributing code which triggers the nasty in the GPLv2. The APLv2 is a permissive license that is great for commercial development and proprietary redistribution. Code that is distributed under the APLv2 and other permissive licenses can be integrated into proprietary products and redistributed under a broad variety of other terms.

@cweagans
Copy link
Author

I'm not suggesting the the license for Bootstrap be changed. I'm suggesting that it's released under a dual-license. That is, when users download it, they'd be able to choose between the Apache license and (some other license). This practice is common, and is used by (as an example) jQuery and Sizzle (the library that jQuery uses for selectors). jQuery is released under the MIT license AND the GPL. Sizzle is released under the MIT, GPL, and BSD licenses. When you download, you choose which license you're going to use.

The problem with changing the license for the Drupal community is a very very large one. Not only would we be changing the license for core, but we'd also be changing the license for every single other module, theme, and installation profile posted on Drupal.org. There are currently around 16000 projects on Drupal.org and making that change is a multi-year ordeal, I'd guess.

@cweagans
Copy link
Author

That is, anyone who is still using Bootstrap under the Apache license can continue to do so. If Bootstrap were released under another license (in addition to the Apache license), then users downloading Bootstrap could choose to use that new license instead if they wanted to.

@caniszczyk
Copy link
Contributor

When I'm back in the office next week, I'll look at what we can do. We may be able to work something out where we license Bootstrap specifically to Drupal.org contributors only under a compatible license.

@Crell, can you email me at zx@twitter.com to start this discussion?

@realityking
Copy link
Contributor

There's some talk of making the next Joomla admin template based on Bootstrap. Nothing's final and especially the license situation hasn't been discussed at all yet but we're pretty much in the same boat. If we make Joomla GPLv3 we basically force all extensions to change their license as well, some of them probably have some GPLv2 only code. Dual licensing bootstrap APLv2 and "GPLv2 or later" would certainly be very helpful.

@cweagans
Copy link
Author

For anyone that's interested, the related issue about adding Bootstrap to the Drupal.org packaging system is here: http://drupal.org/node/1445226

@WraithKenny
Copy link

WordPress suffers the same doom as Drupal and Joomla... Dual Licensing would be awesome...

@gagarine
Copy link

I agree dual licensing is a good (only) way to make bootstrap available to GPL2 only code and keep the advantage of the Apache license.

@norrs
Copy link

norrs commented Jun 8, 2012

@caniszczyk : Is there any new thoughts of making bootstrap dual licensed so we can easily use it in our GPL2 licensed project?

What is the down side of dual licensing bootstrap, seen from twitter/bootstrap-devs view of point?

@sun
Copy link

sun commented Oct 2, 2012

This issue seems to block wide-spread adoption of Bootstrap in Drupal, WordPress, Joomla, and potentially many more GPL-based web frameworks/content management systems. Is there any chance to resurrect this issue? :)

The common solution to combat the problem space is indeed to dual-license the code under GPLv2+ and XYZ (here: APLv2).

@evo42 from @gentics might be able to provide assistance on details, as they just recently re-licensed @alohaeditor from APL to GPL (though note that was re-licensed, not dual-licensed).

@evo42
Copy link

evo42 commented Oct 2, 2012

... forwarding the licensing question to @draftkraft -- he knows all details about the changes regarding @alohaeditor and was talking to a lot of ppl. regarding licence issues

@caniszczyk
Copy link
Contributor

This is still on my radar and will be part of the work of moving bootstrap into its own organization.

My thoughts are to use the MIT license, I dislike the GPL and the mess it causes :)

The fun part of this effort will be getting every contributors explicit permission to make the change:
https://github.com/twitter/bootstrap/graphs/contributors

I will re-open this issue and put it in the community category, assigned to me.

@caniszczyk caniszczyk reopened this Oct 2, 2012
@ghost ghost assigned caniszczyk Oct 2, 2012
@lsmith77
Copy link

should not be too hard to get that into an SQL DB. export csv -> sql

@UTCWebDev
Copy link
Contributor

@gstein GNU.org states, re ALv2 "Please note that this license is not compatible with GPL version 2, because it has some requirements that are not in that GPL version. These include certain patent termination and indemnification provisions. The patent termination provision is a good thing, which is why we recommend the Apache 2.0 license for substantial programs over other lax permissive licenses."

Compatibility issues vs. legality issues; seems WordPress is OK with themes, plugins, etc. incorporating Bootstrap.

Not sure about WP core.

@gstein
Copy link

gstein commented Sep 30, 2013

@UTCWebDev as I said: you're just taking the FSF's word for it. That statement was placed there by Eben a decade ago, and the ASF maintains he is incorrect. We just got tired of arguing with him (though in hindsight, we should have persisted to avoid situations like this).

So you have no real idea what this purported "incompatibility" is, other than what the FSF tells you.

And as a result, people are blowing a lot of time and effort attempting to relicense, based on an arguable statement on a website from a decade ago. I have yet to see anybody provide a specific reason why Bootstrap could not be included in Drupal (or other packages) under its existing ALv2 license.

@zlatanvasovic
Copy link
Contributor

Greg, stop your spam and blame. Please.

APL v2 is very permissive license and it violates some core GPL v2 / v3
terms.

Bootstrap users (including me) want MIT license. It's a fact.

2013/9/30 Greg Stein notifications@github.com

@UTCWebDev https://github.com/UTCWebDev as I said: you're just taking
the FSF's word for it. That statement was placed there by Eben a decade
ago, and the ASF maintains he is incorrect. We just got tired of arguing
with him (though in hindsight, we should have persisted to avoid situations
like this).

So you have no real idea what this purported "incompatibility" is, other
than what the FSF tells you.

And as a result, people are blowing a lot of time and effort attempting to
relicense, based on an arguable statement on a website from a decade ago. I
have yet to see anybody provide a specific reason why Bootstrap could not
be included in Drupal (or other packages) under its existing ALv2 license.


Reply to this email directly or view it on GitHubhttps://github.com//issues/2054#issuecomment-25395400
.

Zlatan Vasović - ZDroid

@gstein
Copy link

gstein commented Sep 30, 2013

It doesn't violate either GPL. But meh ... it's your choice about your
time/effort.

@UTCWebDev
Copy link
Contributor

Full disclosure: I voted for dual license.

However, the Drupal distribution issue is a red herring:
"Check to see if your library is already included in the list of existing whitelist entries.
[...]
If not, verify that the license of the library is one of the following: GPL v2 and later, LGPL v2 and later, (any of these GPL V2 and later-compatible licenses)."

Existing distribution:
https://drupal.org/project/flight
Existing module:
https://drupal.org/project/views_bootstrap
Existing theme:
https://drupal.org/project/bootstrap

Therefore, should be "legal" for Drupal distribution.

Also plenty of precedent in Joomla and WordPress. Templates, themes, components galore...

@stuartpb
Copy link
Contributor

For the subject of projects looking to include Bootstrap that need a less-ambiguously-Apache-compatible 2.0: has anybody considered writing a "GPL v2.1" that doesn't include the anti-Tivoization clause (so developers can use the code in closed hardware) but does include patent termination / indemnification clauses (which it sounds like could be "backported" from v3)?

@cweagans
Copy link
Author

http://xkcd.com/927/ comes to mind.

@stuartpb
Copy link
Contributor

A new license isn't like a new one-size-fits-all standard intending to cover "everyone's use cases", though. Licenses don't work that way- you need different licensing terms to cover different restrictions.

(We have different restrictions because different people need to make different demands- for instance, if you want to release code and receive others' contributions back, using the MIT license wouldn't be appropriate in a culture where most developers keep substantial modifications proprietary, like point-of-sale systems. Meanwhile, on the Web, code usually receives a few tweaks and is uploaded to the public in source form, so allowing a few outliers to keep their changes proprietary won't hurt.)

A proposed "GPL v2.1" set of terms would cover a small portion of use cases that currently exists (big example- Linus Torvalds objects to the anti-Tivoization clause in GPLv3 but doesn't like patents), but doesn't have an appropriate pre-made document to express them (which is why Linux is still on the GPLv2, despite its lack of protection against patent abuse).

@mdo
Copy link
Member

mdo commented Oct 10, 2013

If you want to have that discussion, go for it, just don't do it here please :D.

@stuartpb
Copy link
Contributor

@mdo: Suggestion as to where such a discussion could be had?

@mdo
Copy link
Member

mdo commented Oct 10, 2013

@stuartpb Dunno—but talking about new licenses independent of this framework shouldn't happen here. The consensus has been to move to MIT, and that's well under way. Just seems like the two discussions are not related, especially to the ~60 people watching this thread :).

@stuartpb
Copy link
Contributor

Searching around it looks like there isn't an existing forum for this sort of discussion, so I've made a Google Group: https://groups.google.com/forum/#!forum/nonlawyers

And, to answer my initial question: at the bottom of the page for the GPLv3, it says "Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed." Which, I take it, means derivative works are illegal (in other words, the GPL itself is published under a non-free license).

@gstein
Copy link

gstein commented Oct 12, 2013

Correct: derivative works of the GPL license are not allowed. The authors have not granted that right to you/others. I would state that is a Good Thing. There are already too many FLOSS licenses, and that creates immense problems. Attempting to create a new/derivative license is not very helpful: users and lawyers have to examine it and its combinatorics with other licenses. IMO, choose GPLv3 or ALv2. Don't try and create something new.

For licensing discussions, in terms of applications, combinations, interpretations, etc ... the legal-discuss@apache.org mailing list has lots of eyeballs and lots of history (almost nine years old). And yes, it even includes some lawyers who contribute to the discussion, but (obviously) not to provide official advice. See http://mail-archives.apache.org/mod_mbox/www-legal-discuss/ for archives. It isn't all Apache licensing, but certainly tends towards ALv2-related issues and its relationship with other licenses.

@mirabilos
Copy link

Is git master already under MIT, or will there be a commit effectively switching the licence only in the future?

I’m asking because I need to use this with FusionForge which is a huge legacy codebase which is mostly GPLv2+ but with some GPLv2-only parts, thus Apachev2/GPLv3 will not work for it.

Thanks!

@juthilo
Copy link
Collaborator

juthilo commented Nov 19, 2013

@mirabilos All new contributions since the release of v3.0.1 are dual-licensed under both the APLv2 and MIT licenses and we are planning to make the full switch to MIT with v3.1 (no release date on that yet).

@mdo
Copy link
Member

mdo commented Dec 19, 2013

Shazam!

We're stoked to announce that the MIT relicensing has been completed. The remaining Apache-only commits were reverted by #11927 and replaced by rewritten, MIT-licensed commits in #11928. After several commits to replace all references to the Apache License with the MIT license, fe7c7cc's code is unambiguously MIT-licensed.

Look for this to all land officially in the public hands with v3.1.

(Please note that, as always, the docs continue to remain under the CC-BY-3.0 Unported License.)

❤️ ✨ :shipit:

@nterray
Copy link

nterray commented Dec 19, 2013

Yeah ! Congrats ! ❤️

On Thu, Dec 19, 2013 at 1:20 AM, Mark Otto notifications@github.com wrote:

Shazam!

We're stoked to announce that the MIT relicensing has been completed. The
remaining Apache-only commits were reverted by #11927https://github.com/twbs/bootstrap/pull/11927and replaced by rewritten, MIT-licensed commits in
#11928 #11928. After several
commits to replace all references to the Apache License with the MIT
license, fe7c7cchttps://github.com/twbs/bootstrap/commit/fe7c7ccf29bfb47bf348190837be35f1857a11fe's
code is unambiguously MIT-licensed.

Look for this to all land officially in the public hands with v3.1.

(Please note that, as always, the docs continues to remain under the
CC-BY-3.0 Unported License.)

[image: ❤️][image: ✨][image: :shipit:]


Reply to this email directly or view it on GitHubhttps://github.com//issues/2054#issuecomment-30894685
.

@ThomasWaldmann
Copy link

Thanks a lot to everybody who worked on the relicensing!

Quite a lot of GPL projects (including MoinMoin Wiki 2) will be able to use bootstrap now without worries.

@zlatanvasovic
Copy link
Contributor

Good job.

2013/12/19 ThomasWaldmann notifications@github.com

Thanks a lot to everybody who worked on the relicensing!

Quite a lot of GPL projects (including MoinMoin Wiki 2) will be able to
use bootstrap now without worries.


Reply to this email directly or view it on GitHubhttps://github.com//issues/2054#issuecomment-30921082
.

Zlatan Vasović - ZDroid

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests