Late last week, Daring Fireball's John Gruber helped draw some attention to that fact that Apple had yet to release the source code for components of its iOS 4.3 WebKit implementation as required under the Lesser GNU Public License (LGPL) due to Apple's use of LGPL code in the project. Apple initially released iOS 4.3 on March 10th, and LGPL licensing requires that the source code be released simultaneously with the functional binaries.
As noted by TUAW, Apple has finally relented under the growing pressure and posted the required source code for JavaScriptCore and WebCore for all iOS versions through the latest iOS 4.3.3 pushed out last week.
Reports suggest that this is not the first time Apple has stalled in releasing source code required to be made public, although the company has a support system in place for open source code projects and its engineers have contributed to a number of such projects over the years.
Top Rated Comments
And as Red Hat has shown, you can even restrict distribution to customers that paid you. Yes, THOSE customers can then redistribute freely, but the originating organization is under no requirement to make the source available to everyone who asks.
Yes it is important. It is a very slippery slope to start having company using stuff under GPL then refuse to release the source. On matter of principle they should do it.
Parts of WebKit are under the LGPL license. First, it is not the GPL license which is important, because if it was GPL then Apple and everyone else would have to release the source code for applications using the library, not just the source code for the library itself.
Because the code is under the LGPL license, Apple has to release the source code at some point. That "has to" is one hundred percent, absolute, no way around it. Some blog posts are _not_ creating pressure. Apple had a legal obligation with some bad consequences if these obligations were not fulfilled, some blog posts don't add anything to this.
But contrary to what these bloggers say, Apple had no obligation to make the source code available publicly. They have the choice of making it available plublicly _or_ giving the source code to anyone who asks Apple for it, and charging for the cost of making the copy. I mean "asks Apple", not "posts in a blog post".
So until someone asks for the code, Apple actually had to do nothing. Publishing the source code is the nice and easy thing to do, but not required. Apple could wait for the first person to actually ask for the source code, then reply "well, we haven't preopared this yet, so Joe will do it right when he comes back from his holiday in two weeks time, so it should be ready in three weeks, and please send us a cheque for $10.00 first to cover the cost of copying, the DVD, and the postage".
What a ridiculous headline ... "under pressure" ? A few blog posts... that's "pressure" ? sheesh.
Apple released the source code when it was done tweaking it.
As John Gruber said, there was probably a reason for the delay. Now not only is 4.3.3 out but all the others.
Get a grip, chill out... move on :)
It seems pretty sensational to me. There is nothing in the GPL2 or LGPL2.1 which requires the source code to be published at the time the binary is released. It just requires that the source code be made available. If anyone wanted the source code between the release of iOS4.3 and the syncup with the website, all they would need to do is send a request to Apple, and they would be obligated to supply it.
YAY!
(If the sarcasm wasn't obvious enough, this was sarcasm, which wasn't obvious enough.)