Safari And KHTML May Never Meet
diegocgteleline.es writes "Announcing that Safari passes the Acid2 test has raised some voices in the KDE world. Apple, they say, isn't playing friendly. They don't provide a CVS history, just the modified files where nobody can understand how and when things have changed. It's quite likely that KHTML developers will have to write their own code to pass the acid2 test. Zack Rusin writes: 'All I'm asking for is that all the clueless people stop talking about the cooperation between Safari/Konqueror developers and how great it is. There's absolutely nothing great about it. In fact "it" doesn't exist.'"
So is GPL v3 going to fix this issue?
Or will any attempt to do so put too much burden on the users/modifiers of code?
badness 10000
From Rusin's post and links, it looks like the KHTML guys did quite a lot for Apple's sake (creating specific mailing lists and such).
They don't look like they're asking for much, basically they'd like access to the Safari team's changelogs (and internal CVS I think) in order to see how the changes happened, why the modifications were made (because knowing that a modification was done but having no damn clue about why it was done can be quite useless) and where, and which internal of external features the modification uses.
From what i understood, in a nutshell, the KHTML guys merely used to ask for a documentation that was supposed to exist instead of big webcore tarballs, that was more or less denied and the KHTML guys stopped asking for it.
But they're quite annoyed about the buzz over Safari's change getting back to KHTML, which is something that they're not able to do.
On a side note, it should be reminded that KHTML is only part of the K distribution, which means that they can't afford to put more work in KTHML engine alone that on KDE for example.
"The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
He posted the patches because I provoked him to do it. They are the first patches we have received from Apple since late 2003.
Unfortunately they don't merge very well. I've spend a few hours to merge two of them. The rest will probably require redeveloping.
there's no reason Apple wouldn't be able to hand over all individual patches seperately, which would make things immensely simpler for the KHTML guys.
I see you've spent some time involved in the Apple workflow. Has it occurred to you that the Safari team's development methodology might not easily lend itself to individual diffs and CVS logs?
Apple's samba patches have also never made it into the main code because they break samba on windows.
Anyone can create a patch. The hard part is working with others.
Again, it's the "Power of open source. The Stupidity of Apple."
Nowhere does the GPL require you maintain and distribute CVS logs so everyone can see what changes have been made.
Or it does? GPL requires to release "source code", but this is defined as "the preferred form of the work for making modifications to it". That might include the CVS logs, if they're necessary to make further changes, as it seems to be the case.
Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
I was a borderline "fanboy" when I switched to the Mac a couple of years ago, but once I got past the "ooooh, shiny!" stage, I realized that Apple was no beter than Microsoft or Dell or Intel. Okay, maybe a _little_ better, but still. So, yes, at least one of us changed our minds.
I guess I'm more accepting of Apple's "evil" behavior because their stuff works better than Wintel. The hardware's (mostly) great, the OS is vastly superior, the apps I use work and look better, etc.
Nothing is inexplicable; only unexplained -Tom Baker, Doctor Who
The APSL does not play well with OSS. If I hack on APSL code, and then end up suing Apple for, say, anything, even if it's unrelated to the software, I lose my rights to use that software. An old link that still rings true.
The post right above your's addresses this exact issue. Diff is a pretty simply utillity and this would be a great idea if they were sending small patches. But Apple of dropping HUGE files and only periodically. Not only that but (if you read the article) their changes make calls to the OS X api's. Let see you diff that! :)
Its not the end of the world, but obviously Zack Rusin got tired of being called lazy or some other intollerable (read: typical) OSS user crap while Apple is snowballing their changes (but playing it like their all one big KDE/Apple family...because that makes us feel more warm and chewy about Apple).
Zack does mention that they are staying true to the letter of the LGPL license, so its not an 'at arms' issue. Just an issue he felt needed some clearing up.
David Saxton put a copy of his blog entry up if you'd like to read it: here.
All and all a good story. I'd been thinking that Apple was playing all kittenish too. Lol. But its business.
Quack, quack.
Using version control doesn't necessarily mean "check in each feature/bug fix as one change".
I didn't really say that must mean that either. But regardless of what version control system they are using, they do have a version history saying what changed and why. And whatever version control system their using, it's likely trivial to export that.
stop whining
Who's whining? I've just stated what I believe the KHTML guys were saying. I don't deny that Apple is within their rights not sharing any form of version history.
All I'm saying is that they'd be a better "open source citizen" if they did, and that it's not something which is very costly or hard to do.
What's so wrong about that?
The problem is those are just for his patches, and the codebase he's working on is significantly diverged. We need all the apple developers who made the code his patches depend on to do the same thing.
I am trolling
What does Apple stand to gain from having a better HTML renderer than Linux (or even Windows for that matter)?
Either HTML is portable or it's not, and Apple does not have the market power to succeed with a non-portable version.
The larger the pool of standards-compliant web browsers (whether on Macs, Linux or Windows boxes), the better chance Apple has to complete on a level playing field. As it is, Apple's still in a position to be screwed by websitest supporting non-standard ie-only extension.
So when it comes to KHTML, I ask, why *not* give back.
Posted from my Android phone. Oh, I can change this? There, that's better...
I have a few questions? How does asking a bunch of "X11 related questions" make you feel better? And do you usually deal with issues your having by behaving like an immature 7 year old? Were you one of those kids who had the ball, but only wanted to play by his rules? "NO!!! WE DO IT THIS WAY!!!...YOU GUYS SUCK! I'M GOING HOME! GIVE ME MY BALL BACK!" Honestly, I have no issues with Safari. It works fine. FireFox, which I also have downloaded, works fine. I use Mail.app, and it too, works fine. Maybe it's because I'm not using some "super 1337 g33k feature" that you are, but for me and my typical, everyday usage, it's a decent app. As far as productivity - yes, it is the apps that make the difference. But the apps that come bundled with Mac OS X is what makes OS X so special. I have met people who had a digital camera, a digital camcorder, but was using a Windows machine. It wasn't until they got their fast Mac that everything started to come together. iMovie, iPhoto, and iDVD puts a lot of power into the hands of the average user. Lack of Airport Extreme support in Linux is a bummer. But it's hardly an Apple issue. Well, if you consider it Apple's fault because they chose that particular card, then yes. But, BroadCom is the manufacturer of the card, and they have decided not to open their wireless cards. Honestly, if you can't stand the iBook as much as it sounds like, you should sell it on eBay. You'll find that Macs have a great re-sell value. Just becareful of all the scammers...then again, an "i-i-i-iBook" story would be nice. :)
>>Where in the GPL does it say you have to provide a CVS history?
>Here: The source code for a work means the preferred form of the work for making modifications to it.
Um, I hate to break it to you, but the "preferred form" wording in the (L)GPL is an anti-obfuscation clause. It means that I have to give you the code in the form that I actually use for development -- no stripping out all the whitespace and comments, changing function names and variables to random strings, etc.
It does not mean that I have to give you the code in whatever form you want.
Besides, CVS server logs are not source code anyways. Or maybe you'd like copies of their email and IM conversations, too?
Jay (=
Few reasons.
- Mozilla doesn't integrate into KDE. If I choose settings X,Y,Z in KDE, I will then have to configure them again in Mozilla. Some settings may not even be available.
- Mozilla doesn't integrate into KDE. If I want to use an HTML rendering engine inside of a KDE app, I'd have to devise a hacked up way to connect it to Mozilla.
- Mozilla doesn't integrate into KDE. I'd have to load yet another 70 MB on my system. Not only is it wasteful, but it also takes more time to start up. And if I'm lucky, I may even get to deal with dependency issues.
- Mozilla doesn't integrate into KDE. Have you ever tried to use it as a file manager? If not, consider yourself lucky.
- Mozilla doesn't integrate into KDE. The Konq sidebar allows the application to be much more flexible than mozilla... such as the ability to browse my media (amaroK module), folder heirarchy, etc. not just my history.
- Mozilla doesn't integrate into KDE. All of the widgets rendered flow nicely with the rest of KDE, and perform the same way. For instance, all of my text boxes are spell-checked by default.
And then there are a few other things that don't matter quite as much (Like integrationNot that you have to like it. I, however, do.
Funny thing is, I think you could argue that the GPL already more or less requires this:
Now it doesn't say that the changes actually have to be documented, but I am reading "the date of any change" to mean that the date for each single change needs to be specified, which would necessitate specifying what change belongs to which date, which comes pretty close to documenting the changes.
To get back on-topic, I'm actually curious if Apple is complying with this rule, and if so, with what interpretation of it. :-p
How is this "a non-started argument if I just think a little creatively about it?"
Problem: I want to test my code against Safari 1.0, 1.1, 1.2, 1.3, and 2.0.
Solution: I need 5 different machines (virtual or otherwise) to run five different browsers?
That's a shitty dilemma, isn't it? Somebody's underlying architectural problem becomes my QA problem.
Why does half the browser have to live in the OS libraries?
Why can't these same libraries be bundled up in developer releases so I can at least have five executables on one OS?
Safari is the new AOL of browsers. Feh.
Possibly, possibly not ... but if it's supposedly so bad for them to do what they are doing, why are you complaining.
They'll learn better from their own mistakes, if they are mistakes. All the complaining does is piss them off, and blind them to any problems they are creating because they won't want to admit the annoying people are right.
And as I said in the previous story, there is a big difference between "what customers want" and "what upstream wants" ... sometimes requiring two seperate patches on seperate deadlines. As long as they obey the GPL, I really couldn't care if they never send patches back ... they aren't required to do so, and if the KDE people wanted that they should have used some other license. You could argue that it's "nice" to do so, and part of the "community" spirit ... but given their entire GUI foundation is proprietary I don't see that they'd benifit much.
In many ways this is like saying that when OpenBSD develop new code X, they should be required to backport it to NetBSD ... no, sorry, it doesn't work that way ... and sometimes that part can take 10x as long as writting the code, if you do it, so I certainly would never use any source that required it.
ustr: Managed string API with ave. 44% overhead over strdup(), for 0-20B
One mans "Doing the bare minimum to comply" is another mans "Doing everything requierd of them". .Your problem is not with Apple ,it is with the LGPL license.
If you have a problem with how apple is handling the code releases
Personaly i belive perhaps they could make it a little easier on the KHTML Devs , though they are under no obligation to do this
The only things certain in war are Propaganda and Death. You can never be sure which is which though
this looks pretty easy to understand to me it's all laid out in nice small txt files and the link to each txt says exactly what the patch does. http://weblogs.mozillazine.org/hyatt/archives/2005 _04.html#008042
OMG Ponies!!! with Glitter!!!! I miss Pink
So Safari is a fork of KHTML then? Fine. Again, I don't want to hear anyone talk about how great Apple is because they give back so much to the open source community.
Since when is doing a fork not "giving back"?
The whole point of open source is that anybody can do anything they pleases with the code. I.e., the license not aimed to protect the rights of the original developers, but to protect the freedom of the subsequent users/developers to do what they want with the code, including making a fork.
If the KHTML developers don't like the changes Apple made, they are free to not put them back into their project, and let Safari branch out on its own. What's the big deal? Oh, turns out they want the functions added, but didn't like the way it is done? Tough luck, I say, life is not always how you want it to be.
If the KHTML developers don't like that, then they better not use an OSS license in the first place and then complain when people actually use the rights granted by the license!
OTOH, if Apple refuses to release the source of Safari when they distribute the binary then we have a valid complain. As long as the binary isn't distributed, we don't even have grounds to tell Apple to give us the source code! Much less give it in a way we like.
Oliver.
What you should be asking yourself is "why not read the article?"
Apple has given back the changes. Apple has even built a new framework around KHTML. What Apple hasn't done is do all the integration work for the KHTML people. Who are now whining about how hard the changes are to work back in.
The KHTML team doesn't seem to be working very hard, so a fork happens. Forks happen. They rarely stop at one, either. I expect sooner or later we'll see another fork of KHTML that will try to bring the Apple changes onboard, and will thus leap over the existing KHTML project.
But in the meantime, we get to hear the lamentations opf the lazy.
And if you had cared to even look at Hyatt's Blog, you'ld know that the fucking link says "Disable antialiasing for the drawing of polygons." Nobody's as blind as the one who doesn't want to see.
It's one thing to complain about the general form how Apple gives back their changes to the KHTML team, but only an idiot wouldn't be able to grok what Hyatt changed for Safari to render the Acid 2 test correctly. And if that only gives a faint hint at where to look, it's a thousand times better than aimlessly poking a stick at the source with a blank stare to find the bugs.
Which brings us to this odd statement from Zack Rusin in answer to the rant in the last link in TFA.
Lars T.
To the guy who modded me down from perfect to terrible Karma - Apple haters still suck
You obviously work on a grand total of a couple thousand lines of code at work, if at all, and aren't working in a source control managed environment.
Let's make grandiose and inaccurate assumptions, shall we? FYI, I've written version control systems and worked on large portions of commerical operating systems. On really big systems, I hate to tell you, sometimes history isn't there either. Some version control systems suck worse than CVS, as you ought to know from your vast experience.
Apple is what it is: a talented amoral corporation led by a greedy egotistical amoral CEO. They aren't "Different", they aren't "feeeel-gooood", and they don't care about OSS unless it makes them money.
This displays profound ignorance about Apple's motivations, and those of Steve Jobs, a man notoriously unaffected by money. He was a billionare before he was thirty. Money doesn't move him. He can be convinced, you idiot.
And you -- you -- you're wasting time flaming me. Apple can be convinced to really buy into open source. Since you're so much more experienced, intelligent, and moral than I am, why not set up a meeting with Jobs?
Because I'll tell you something: Apple has neither the version control technology nor the internal motivation to provide history. They use CVS. The last time they tried to export source via external CVS servers, with Darwin, it didn't work out so well. So they shut it down. They could fix this, but they don't care enough about open source. Tell you what: you should either help them care, or go fix KDE so that it's a viable alternative GUI.
Jesus. Nothing better on slashdot than to be flamed by some holier-than-thou script kiddie who contributes a couple of lines of code to KDE and thinks he's qualified to judge "morals."
Good point. I think it's normally interpreted as "the form you use yourself for modifying it". Which means if apple people really do just use these humongous patches or modify the source with no scm at all they're ok, but I doubt that's how it works.
I am trolling