On Mon, 2007-11-26 at 10:05 -0500, Dan Winship wrote: > H > Can you check out http://live.gnome.org/LibSoup/DesktopWideHttp and see > if there's anything missing?
This looks good overall. Are there any libsoup python bindings? By far the most important thing from my perspective is read-only cookies. I am sure there are use cases for cookie modification, but it seems more specialized. I certainly wouldn't want to have writable cookies by default because it seems likely to "break the web" as sessions get overwritten, etc. A cache is also a requirement for some of the things we've been prototyping in online desktop; it doesn't necessarily have to be shared with the browser, though that would be nice. Does libsoup support concurrent access? This would also be critical for online desktop. Which, taking a step back, is actually the really hard part about most of desktop/browser HTTP integration. As far as I know, all mainstream browsers are not concurrent (threads may be used to make some operations async, but that's not the same thing exactly). According to this document Necko is not threadsafe: http://www.mozilla.org/projects/netlib/necko_threading.html A concurrent cache is fairly straightforward; concurrent SSL certificate database I don't really want to think about =) Overall, the libsoup approach + browser integration hooks does have the disadvantage though that it will have to follow browser changes (e.g. cookies in Fx3 are now in cookies.sqlite) and just in general be another HTTP implementation besides the one in the browser. The ideal world would have a nice gobject/glib async interface (+Python/C#/Java bindings) which would wrap the same library used by the browser (necko, whatever gtkwebkit uses, etc.). Realistically though, trying to unify HTTP libraries is a huge amount of work; the payoff would be fairly large, but what we need right now is a HTTP library with: * Async interface * Concurrent access (multiple processes and threads) * Caching * Readonly cookies from browser * Python bindings _______________________________________________ desktop-devel-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/desktop-devel-list
