On Oct 2, 2008, at 1:07 PM, Brett Wilson wrote: > About a year ago, Google released the Google URL Parsing and > Canonicalization Library (Google-URL) as a separate open-source > project: http://code.google.com/p/google-url It was developed for > Chromium with an eye toward being used in other client apps at Google > and elsewhere. > > We think there are a number of advantages of this library over the > current KURL code, but I'm not trying to sell anybody on using it or > have a big debate about its merits at this time. (Our most important > constraint is that we want our application layer and our WebKit layer > to agree on parsing for security and other types of "mismatch" bugs.) > > I have mentioned optionally replacing KURL with an ifdef to a number > of WebKit members. The reception has been tentatively yes.
As one of the people who were asked and tentatively said yes, I would like to clarify that my agreement was conditional. Specifically, I'm ok with this as a temporary measure, as long as we are on track to eventually have a unified URL implementation. I think having our long- term solution be an ifdef to have two completely separate implementations of such a simple class (<2000 lines of code for the current WebKit implementation) would be extremely silly. Also, we have plans to significantly redesign the interface of KURL, and having it ifdef'd to two different implementations will make that quite a bit harder. Also, the URL code is often a source of security or performance issues, and fixing them twice is a cost to the whole project. To clarify "on track to eventually have a unified URL implementation", I specifically mean: 1) The Chromium engineers responsible for this area of code would agree in principle that we should work towards a unified URL parsing implementation. 2) We would have at least a rough outline for how the unification could happen. I think two plausible approaches are: (a) fix KURL to satisfy the requirements that drove the creation of Google-URL and drop the Google-URL fork of KURL; (b) integrate Google-URL into the WebKit project and drop the original code for KURL. As far as I am concerned, both of these options are on the table and the determinations should be made by criteria like performance, correctness, code quality, etc. I consider the option of completely replacing WebKit's URL implementation with an external dependency to be a nonstarter. 3) We would agree on a rough timeline on which we plan to make the unification happen; if it hasn't happened by then we'll plan to revisit this issue. Once we are set on points 1-3, I am ok with landing ifdefs as a transitional measure. Until then, I am not ok with such a change. Regards, Maciej _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev