Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI This information is Copyright 2009 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: WebKit 1.1.x 1.2. Name of Document Author/Supplier: Author: Alfred Peng 1.3 Date of This Document: 23 July, 2009 4. Technical Description Copyright 2009 Sun Microsystems
1. Introduction 1.1. Project/Component Working Name: WebKit 1.1.x 1.2. Name of Document Author/Supplier: Alfred Peng 1.3. Date of This Document: 07/21/2009 1.3.1. Date this project was conceived: 10/01/2006 1.4. Name of Major Document Customer(s)/Consumer(s): 1.4.1. The PAC or CPT you expect to review your project: Solaris PAC 1.4.2. The ARC(s) you expect to review your project: LSARC 1.4.3. The Director/VP who is "Sponsoring" this project: robert.odea at sun.com 1.4.4. The name of your business unit: Software - OPG 1.5. Email Aliases: 1.5.1. Responsible Manager: leo.binchy at sun.com 1.5.2. Responsible Engineer: alfred.peng at sun.com 1.5.3. Marketing Manager: glynn.foster at sun.com 1.5.4. Interest List: desktop-discuss at opensolaris.org 2. Project Summary 2.1. Project Description: WebKit is an open source web browser engine. It's also the name of the Mac OS X system framework version of the engine that's used by Safari, Dashboard, Mail, and many other OS X applications. WebKit's HTML and JavaScript code began as a branch of the KHTML and KJS libraries from KDE. WebKit can be built on top of different widget backends, which includes GTK, Qt, wxWidgets and some others as well. For this case, WebKit will be built with GTK+ on Solaris. It's the engine that will be used for embedding a browser in various GNOME applications, devhelp/yelp for example. WebKitGTK+ is a community sub-project maintained mostly by GNOME and GTK+ developers. It's implemented directly on top of GTK+, GLib and GNOME libraries and provides lightweight web viewing and editing features as well as being the basis for complete web browser applications. It supports the latest web standards and offers good performance and memory usage characteristics on the desktop. The release schedule for WebKitGTK+ will be matched with GNOME's 6-month release cycle. Currently, GNOME applications including devhelp/epiphany have switched to link against WebKit. 4. Technical Description: 4.1. Details: WebKit has the following features: - CSS 2.1, CSS3 support. - DOM (Document Object Model) - Styleable form controls with CSS. - Drosera (A JavaScript debugger for WebKit that can be used with any application that uses WebKit) - Enhanced Rich Text Editing. - XML techologies support, including XPath, SVG and XSLTProcessor (JavaScript API for XSLT). - Netscape-style (NPAPI) plugins support. - WebKit embedding API (provides clients with a public API for loading, displaying and manipulating Web content.) New in 1.1.x: - HTTP auth with optional GNOME keyring storage. - HTML5 media element support. - Spell check support. WebKit supports the AT-SPI accessibility layer since version 1.0.x. The GNOME accessibility team are working hard with WebKit team to ensure WebKit is accessible when GNOME 2.28 is released. The libcURL HTTP backend support has been removed from WebKit 1.1.x. The default HTTP backend is now libsoup. WebKit uses libsoup to verify the peer's certificates for HTTPS connections. Currently, WebKit accepts all SSL certificates automatically by default as libsoup doesn't support client SSL certificate. Meanwhile, libsoup is also used for HTTP auth handling with optional GNOME Keyring support. WebKit 1.1.x enables HTML5 Video support by using GStreamer framework as the media backend. This makes it possible for the video content to be embedded in SVG and manipulated with CSS and JavaScript. 4.2. Bug/RFE Number(s): None. 4.3. In Scope: See above. 4.4. Out of Scope: See above. 4.5. Interfaces: This section only hightlights the changes since LSARC/2008/782. Exported Interface: Interface Stability Comment ---------------------------------------------------------------------------- /usr/lib/libwebkit-1.0.so.1 Obsolete Volatile Symbolic link /usr/lib/${MACH64}/libwebkit-1.0.so.1 Obsolete Volatile Symbolic link /usr/lib/libwebkit-1.0.so Volatile Symbolic link /usr/lib/libwebkit-1.0.so.2 Volatile Symbolic link /usr/lib/libwebkit-1.0.so.2.7.0 Volatile webkit lib /usr/lib/${MACH64}/libwebkit-1.0.so Volatile Symbolic link /usr/lib/${MACH64}/libwebkit-1.0.so.2 Volatile Symbolic link /usr/lib/${MACH64}/libwebkit-1.0.so.2.7.0 Volatile 64bit webkit lib Imported Interfaces: Interface Stability Comments ---------------------------------------------------------------------------- cURL Obsolete Uncommitted PSARC/2007/165 libsoup, GStreamer Committed LSARC/2007/520 4.6. Doc Impact: None. 4.7. I18N/L10N Impact: The JDS team and the G11N team are working together to evaluate and provide I18N/L10N support. 4.8. Packaging & Delivery: The project will be delivering the following packages: SUNWwebkit SUNWwebkit-devel 4.9. Security Impact: WebKit uses libsoup to verify the peer's certificates for HTTPS connections, instead of libcurl. Currently, WebKit accepts all SSL certificates automatically by default as libsoup doesn't support client SSL certificate. Meanwhile, libsoup is also used for HTTP auth handling with optional GNOME Keyring support. 4.10. Dependencies: None. 5. Reference Documents: 1. SUNWwebkit,SUNWwebkit-devel pkgmap pkginfo depend 2. XDG Base Directory Specification http://standards.freedesktop.org/basedir-spec/latest/ar01s03.html 3. WebKit community http://webkit.org/ http://webkitgtk.org/ 4. WebKit wiki page http://trac.webkit.org/wiki 5. References for web standards: CSS 2.1: http://www.w3.org/TR/CSS21/ CSS 3: http://www.w3.org/Style/CSS/current-work#CSS3 DOM: http://www.w3.org/DOM/ XPath: http://www.w3.org/TR/xpath SVG: http://www.w3.org/Graphics/SVG/ XSLT: http://www.w3.org/TR/xslt HTML5: http://www.w3.org/TR/html5/ 6. Resources and Schedule 6.4. Steering Committee requested information 6.4.1. Consolidation C-team Name: Desktop 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open