[Webkit-unassigned] [Bug 26242] New: [GTK] The way we handle optional features is not quite right

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Jun 7 10:52:31 PDT 2009


https://bugs.webkit.org/show_bug.cgi?id=26242

           Summary: [GTK] The way we handle optional features is not quite
                    right
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit Gtk
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: xan.lopez at gmail.com


First with the keyring support, and now with the GNOME proxy support (see bug
#25263), the way we are handling optional features is by providing *compile
time* flags in webkit for them. I believe this is a less than optimal solution,
and here's why:

Suppose you maintain the webkit package for distro Foo, and want to support all
webkit users with a single binary/package (a reasonable request, IMHO). Right
now your only choice is to enable all options, and have applications check for
every and each of them and disable, if it's possible, those they do not like.
That's already a pretty bad design, but worse still the webkit library will
still link with the optional libraries anyway, so for example Midori on Xfce
will link through WebKit with GNOME libraries.

I believe a better design is to allow applications to choose the options they
want for themselves (ie, positive instead of negative API), with the default
being a baseline webkit with no extra functionality. This is how the GNOME
proxy feature used to work before bug #25263 (Epiphany chooses to enable it,
and thus depends on libsoup-gnome. Midori, I assume, does not, and does
nothing), since you could assume that webkit wouldn't have that functionality
in any distro.

My proposal is to revert the proxy patch, and change the keyring code and any
future optional feature so that they can be shipped as modules that
applications can optionally enable, allowing those who don't want to to not
depend on the extra libraries (perhaps those modules could be in different
packages in distros, I guess that's up to them).


-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list