What a sensationalist title. They dropped GPL, leaving MIT. This is a big win. MIT is significantly more free than GPL (it does not mandate that you make things derived from it free, but the license itself does provide more liberties than GPL).
They require CLA, so that they can put the code under MIT. It's legal silliness, but how is it at all bad?
> They require CLA, so that they can put the code under MIT. It's legal silliness, but how is it at all bad?
Why would a CLA help with that? Since all existing code is already licensed under MIT, and for future code they can just refuse to merge anything not under MIT. The only use a CLA has is if anyone thought the MIT restrictions were too harsh, but I cannot see when that would be the case. You can do almost anything with MIT licensed code.
it's because contributor work is under it's own copyright, per individual. This is a huge legal (bureaucratic) issue and thus the CLA is meant to normalize all contributions to fall under the MIT.
also I know this is getting into inflammable territory but the GPL (v3 especially) is a very big turn off to adoption for a lot of for-profit companies due to worries that if they use the GPL code, their product and all derivative works are "tainted" (need to provide 'free' source access)
Thus I can see the removal of GPL as being a clarifying factor, as lots of companies dual license GPL and a proprietary license, which may lead to misunderstanding in this case.
I have no problem at all with the dropping of GPL. Dropping GPL may stop any worries that jQuery at some point in the future will drop MIT in favor of GPL (though they still could do that since MIT is GPL compatible).
The license itself is what normalizes the copyrights, so a CLA is just additional bureaucracy. The contributors to jQuery have already all agreed to contribute their code under MIT, so why would they need to do it again?
The CLA formalizes that you intended to contribute the work and that any other people with an interest in it (your employer for example) is okay with it. Here's a worst-case scenario:
Imagine that some employee of a company writes some nifty code and submits a pull request to jQuery. We land that code and six months later the company finds out. They're shocked, shocked that the employee wrote that code on company time and just gave it to us, especially because it was based on one of their super-secret header files and patented algorithms. They insist that we remove it immediately and remove that version from all CDNs. So we do. And everyone using that code has a broken site.
Now of course, that could still happen with a CLA in place, but only if the contributor lies or there is a misunderstanding between employer and employee. We're not seeking ironclad protection here, only reasonable due diligence.
How is it a big win? Dropping GPL is basically the same situation but slightly simpler.
Also requiring the CLA to put the code under MIT makes zero sense to me. They could use the CLA to do a lawsuit, but why would they ever bother suing over MIT-licensed code?
You are thinking of a copyright assignment requirement, such as the FSF uses. With assignment, you are turning the copyright over to the assignee. In effect, it is no longer your work. The FSF's agreement includes a provision that they will give you a license to use the work in any way if you ask.
JQuery is adding a copyright license requirement, not a copyright assignment requirement. You do not transfer your copyright to them. All you do is give them a license.
The FSF needs an assignment because, as you implied, they foresee the need to sue to enforce the GPL. By owning the entire copyright, they avoid some troublesome issues of standing to sue.
The JQuery people, as you note, are unlikely to ever need to sue to enforce the MIT license. Hence, they do not need to require copyright assignment.
The JQuery contributor license does a few things useful to the JQuery project. Others have mentioned some of them already, so I'll just add one that I don't think anyone else has mentioned: It specifies that JQuery gets an irrevocable license to use the code. There's a popular belief that once someone releases something under an open source license, they cannot revoke that license. As far as I can tell, there is little or no legal support for that belief.
There are important projects, like OpenSSH, that are based on the idea that a company having taken its once-open offering back to a proprietary product can't then stop people from taking the last open-source version of the product and forking it from there.
As with nearly everything in the legal world, the devil is in the details.
Suppose I release something under an open source license. You grab a copy and start using it in accord with that license. You are copying it, making derivative works, and distributing copies of the original and/or your derivative works.
Alice gets one of those copies from you. Alice wants to distribute copies and derivative works, so she also needs a license. Who can give her a license?
She got the software from you, so maybe you can give her a license. With some licenses, you can. The MIT license, for example, specifically says you can sublicense. Unfortunately, some popular free/open licenses do not allow sublicensing. If the software is under one of those, Alice will have to get her license from me.
So suppose that after you received your license, I announced that I am no longer giving out any new licenses. If Alice gets her copy from you after that, we are in interesting territory. You've got a license, so I think you are probably safe to continue distributing the software, although again, the devil will be in the details. Let's make it simple and assume the license said it was irrevocable so we don't have to worry about your license.
Since Alice did not get a copy until after I had announced I would no longer grant licenses, my position when I sue Alice for copyright infringement will be that my putting the software up under an open source license was an offer to form a licensing contract with anyone who obtained the software, where acceptance of the offer and contract formation occurs when someone obtains the software. Offers usually can be withdrawn before acceptance, and that's what I did.
Maybe the license agreement you have with me can help Alice. If the license said that you could distribute the software and the recipients received a license from me, then you might be able to sue me claiming that by not giving Alice a license I am in breach of the contract between you and me. That will be an interesting case.
If you do win, that's not the end of the interesting and fun arguments. The court will have to fashion a remedy for you. Will they order me to give Alice a license? Or will they limit you to collecting damages? If the former, do I just have to license it to people who like Alice get it from people who got licenses from me before I stopped giving new licenses, or do I have to license it to people who get it from Alice later? If the court goes for damages, it will be fun to try to figure out the monetary damages of me not licensing your recipients to modify and redistribute the code.
Unfortunately, not many free/open licenses actually state they are irrevocable. The Apache 2 license does. It also says that you can sublicense. This seems pretty safe. People who receive the software before a revocation attempt are covered by the irrevocability, and people afterward can be covered by a sublicense from someone in the first group.
GPLv3 also says that it is irrevocable. However, it quite adamantly insists that you cannot sublicense it. It instead explicitly says that when you copy a GPLv3 program the recipient automatically receives a license from the original licensors. This is not as good as Apache. It's basically the situation I describe in the Alice hypothetical.
The MIT license says you can sublicense, but does not say it is irrevocable. Also not as good as Apache. If my software is MIT license, I might be able to revoke the license I gave you, but Alice might be safe as she got her license as a sublicense from you. (Whether or not a court might find an implicit irrevocability clause in a license is yet another interesting issue that will come up should someone try to revoke one of these licenses).
Sadly, many licenses mention neither irrevocability nor sublicensing. GPLv2 goes even farther into risky territory, not saying it is irrevocable and explicitly disallowing sublicensing.
> What a sensationalist title. They dropped GPL, leaving MIT. This is a big win. MIT is significantly more free than GPL
Define your terms. "significantly more free" is a nonsense statement. At least the FSF has a strong definition of "free". I haven't seen anything nearly as compelling from any other Free software communities.
Given that jQuery was distributed under a dual MIT/GPL license this has basically no effect on anything anyway.
That doesn't make it "significantly more Free" just equal. MIT is not copyleft. I think arguing about quantities of freedom is fairly meaningless. Especially in this case where this is no effective difference in the rights of developers or end users.
And why would developers sacrifice their own freedom just because of freedom of end users?
Also, the fact the FSF has its own definition of words "free" and "freedom" doesn't make that others are not free to use the more common meaning of the word. Free != "free"
The specific freedoms that I'm referring to are that derivative works need not also be licensed the same way. With the MIT license, I can make derivative software and can distribute it in binary form, without providing the source code. Additionally, I can release my derivative work under a non-GPL (or non-MIT) license.
My definition of "more free" for a license: license X is more free than license Y if the things allowed under X are a strict superset of those allowed under Y.
Really? Really? You think that's okay to post on this forum? You are seriously that one-sided that you can't even be happy with dual licensing?
This is why we can't have nice things.
edit:
WTF? Do you people even know what dual licensing means? It means it's a choice! Choose MIT! Choose GPL! You choose the end license when you use it as a library.
I'm always a bit surprised that an open source project can change its licensing terms so easily. Can't any contributor to the project with their code upstream oppose this change? How does that work?
If your project insists on copyright assignment (as the FSF does) then there's a single copyright owner and the project can make any licensing change it likes. Otherwise (assuming you don't manage to get explicit agreement from all previous contributors for their past changes) the only licensing term changes you can make are those which the previous license already permitted. For instance, many projects use a "GPL v2 or any later option" wording, which would allow them to later move to GPLv3 even though they had previously accepted contributions made when v3 didn't even exist.
In this case it looks like jQuery was previously dual-license MIT-and-GPL, so anybody who contributed to it was saying "you can use these changes under either MIT or GPL". That means it's entirely OK for the project to switch to "just MIT", because "MIT" was an option all those contributors were permitting already.
I hope the people upvoting this are doing it to encourage discussion, not to agree with this totally inane post. There is no controversy.
Dual licensing confused people for no good reason. Some people thought that including jQuery in their own projects would somehow apply the GPL on their project, since that was one of the licenses. The idea of choosing one license and not the other seemed odd, and most people are just users (not derivative work creators) so it doesn't even affect them.
> Some users were surprised by the change
Nobody has expressed surprise anywhere but the few people who posted here without reading the original post. The link to the bug tracker wasn't a user surprised by the change, it was someone simply reporting that we'd forgotten to remove the GPL from one of about two dozen pages where we had it mentoned. That's fixed now.
> A search of the site shows that details of the actual agreements are not currently available.
The only reason we didn't link the CLA or CAA is because it contains a form that the contributor submits and we don't want a bunch of crap posted back to us by people who aren't contributors. dave1010uk posted a link to the text below, and I've added a todo to make that text available on another page.
a lot of people don't understand the reason for the CLA:
it's because contributor work is under it's own copyright, per individual. This is a huge legal (bureaucratic) issue and thus the CLA is meant to normalize all contributions to fall under the MIT
disclaimer: I'm not related with jQuery, this is based on my prior knowledge of open source contribution legal issues.
Do you have an example of where this has been a problem? Most open source projects lack a CLA and do not have problems with bureaucracy. For example the PostgreSQL and Linux projects lack any CLA and have never had any problems with this as far as I know.
Lacking a CLA means one less hurdle for new developers. The advantage of a CLA is that you can change license, but if you are MIT licensed you can already change to almost any license without requiring any approval from the community. CLA:s only make sense for very strict licenses.
and, I may add, something a lot of startups should consider more significantly before "opening up" their code bases. Tracking down contributions after-the-fact just to bring your codebase into compliance is going to be almost impossible, and this may be a requirement for your prospective exit's legal team.
I too find the CLA decision a bit strange, though I have no issue with their dual to single license transition. Dual-licensing under MIT and GPL is effectively like licensing under MIT; if someone wants to write a proprietary fork, or a GPL extension, they already could and still can.
What I find strange about the CLA is that I don't understand the reason behind it. With a solely-GPL project, I could understand an agreement like the FSF's, which has practical advantages such as a single party asserting the license terms if a third party breaks them, while promising the code will not be used in proprietary software against the author's wishes. But in this case, if the code is under the MIT license, third parties can already use the code in their proprietary code, so the agreement doesn't gain anything. So, what's the point?
I'm a worried although the JQuery foundation is not a company. The CLA basically allows them to do everything with your code and you can't revoke it.
One big bad example of CLA abuse to me is Sun's OpenSolaris CLA which allowed Oracle to take external contributions and turn Solaris back to proprietary software.
It means that no single zealot or bad apple can stop the code from being used in ways the users want.
E.g like this Rémi Denis-Courmont guy, a VLC contributor working for Nokia, killed the iOS VLC port for violating some GPL technicalities, despite the code being available, the users wanting it, and the team porting it to iOS for free.
And you still get GPL with their MIT licence: "The Foundation confirms that with the MIT licence, if someone desires GPL licensing, they are free to make changes and re-license it under the GPL."
I don't like how you brand Denis-Courmont a zealot or bad apple for not letting others break the license terms of his code. He licensed his code under the GPL for a reason, and if someone doesn't like his license, they shouldn't expect him to waive his rights on his code. (I don't know about the case, I'm basing this on your comment alone.)
Having the legal right to do a thing does not mean that you are invincible to criticism for exercising that right. You have the right to freedom of speech, but the things you actually say may be foolish or wrong; contrarily, cheating on your spouse is not a crime, but doing so still makes you a worse person. You have the right to keep all your money instead of giving a penny to charity, but being charitable is better. "Legal" and "good" are not the same thing.
Denis-Courmont may have licensed his code under GPL for a reason, but it can very well be a bad, zealous reason. Indeed, I would expect that almost every person who truly is a zealot and a bad apple would choose to license their code under GPL. The GPL is a license that demands total obedience to a particular ideology of software distribution, and requiring that other people obey your ideology in every detail is the defining characteristic of a zealot.
Calling him a zealot just for using the GPL seems a bit unnecessary to me, but whatever. It does not matter what his reasons are for it, he is allowing people to use the code he wrote under a certain set of conditions, which some people have not been honouring. I don't believe there is anything wrong with him calling them on that; why should he just sit there quietly while other people violate his license and profit off his work?
>why should he just sit there quietly while other people violate his license and profit off his work?
Gee, I don't know. Maybe for the good of the hundreds of thousands of users of iOS/VLC? Maybe because the other contributors had agreed to this and didn't care for the technical violation, especially since both the code was available and the app was free? Maybe because also working for Nokia seems like a huge conflict of interest?
Maybe Apple and Microsoft should release all their software under a permissive license for the good of hundreds of millions of users. Is that what you are suggesting? I do not have any problem with people/corporations releasing/selling their code as they see fit, but I do take issue at people feeling entitled to set the terms for other people's code. If the other contributors do not mind the violation, they are free to remove his code and release their code as they see fit.
Using the GPL is not really comparable to saying something foolish or wrong, and is certainly not comparable to cheating on a spouse. Such arguments reek of anti-GPL zealotry.
The license terms were only broken in the most unimportant of ways. Apple did nothing to make VLC less free, did not have a custom version that needed source sharing, etc. It was a stupid technicality. Denis-Courmont did no-one good.
Honest question since I'm not really familiar with the case and might be completely mistaken: One of the fundamental principles behind the GPL is that a user can modify the program and run the modified program. Was this freedom preserved? Because if it was, my posts in this thread might be completely misguided.
That is going to depend on who you talk to. The GPLv3 has "anti-tivoization" text that keeps the device maker from locking down the device to approved programs. As far as the GPLv2 is concerned you only need to be able to modify and compile the code, and no particular device has to run it.
In this particular case, anyone that was already capable of running code they compiled on an iphone (read: people with a developer license) was also capable of making and using modified versions of VLC.
E.g like this Rémi Denis-Courmont guy, a VLC contributor working for Nokia, killed the iOS VLC port for violating some GPL technicalities, despite the code being available, the users wanting it, and the team porting it to iOS for free.
Hang on a minute. What you're trying to push aside as a technicality has been a recurring sore point between Apple's App Store and the FOSS community, and Denis-Courmont is far from the only person who has been upset by attempts to distribute GPL'd software via the App Store under terms are incompatible with both the letter and the spirit of the GPL. [1]
But in this case, since we're talking about an MIT licence, it's hard to see how the CLA makes any sense. What can it possibly allow anyone to do to anyone or with anything that they couldn't already do anyway under the MIT licence? They could release the code under a licence that doesn't even require the credit/copyright/disclaimer, I suppose, but those aren't exactly a heavy burden. Other that that, the whole point of licences like the MIT ones is basically to avoid having the kinds of restrictions that would ever result in copyright enforcement action, so it's not like you need a single party with standing to sue or issue takedown notices, for example. I don't see what anyone gains by having this extra hoop for contributors to jump though.
[Edit: Someone posted the actual text of the CLA. It seems to address significantly more that just transferring rights to the jQuery Foundation, so there may or may not be sneaky legal shenanigans going on here that I wasn't considering above.]
Apple is taking a Free program and distributing copies that have restrictions on them. But you can easily get the original Free version that has the exact same functionality, byte for byte. Seems like a technicality to me. The end user still has full access to the source code in its untainted GPL majesty.
Apple didn't violate "some GPL technicalities," they took away core rights from the user that the GPL license was designed to provide them.
Whether or not you agree with copyleft licenses, how can you sit there and say that someone is a zealot for wanting to enforce the terms under which they licensed their work?
Besides, it was Apple that removed the software rather than modify the terms of their distribution to allow for GPL software.
>Whether or not you agree with copyleft licenses, how can you sit there and say that someone is a zealot for wanting to enforce the terms under which they licensed their work?
1) Because for a pragmatic (not zealot) guy, the license is just a practicality, not the be all end all. If the license gets in the way of the work getting used, so much worse for the license.
2) Because if we are 10 contributors to a program, have picked GPL, but have no problem with the app being available on the App Store, and some other contributors even do the hard porting work for free, then I could call the 1 of us who disagrees and destroys everything a zealot.
3) In the general case, because the use of GPL for a project could have just as well come from external factors and not because the contributors have some grant vision about GPL/FOSS software. E.g because a few underlying libs they had to use were GPL themselves. In that case, I'd absolutely despise some idiot taking advantage of that to force the hands of the other contributors/users.
It is very unclear with Javascript what a derived work is and what linking means, unlike C. You could argue that your whole website would become GPL if you linked with jquery under GPL terms, including the text, logos etc, even though most people do not want to put documentation under GPL (because of the attribution terms).
My guess (with no inside knowledge): they are dropping GPL because many companies have a strict "no GPL" policy and, unfortunately, those companies don't understand the notion of duel licensing. Furthermore, that confusion only harms the JQuery project, as the philosophical a aspects of the GPL aren't driving their open source philosophy.
So it's not exactly FUD about the GPL. Companies can have very legitimate reasons for wanting to stay away from it. I would call it a more general legal ignorance on the companies' parts with pragmatism on jquery's.
They require CLA, so that they can put the code under MIT. It's legal silliness, but how is it at all bad?