2011-05-09 Eric Seidel <eric@webkit.org>
authoreric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 9 May 2011 17:19:36 +0000 (17:19 +0000)
committereric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 9 May 2011 17:19:36 +0000 (17:19 +0000)
        Reviewed by Adam Barth.

        Add guidelines for feature addition to webkit.org (per disccusion at contributor meeting)
        https://bugs.webkit.org/show_bug.cgi?id=59672

        * coding/adding-features.html: Added.
        * nav.inc:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86062 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Websites/webkit.org/ChangeLog
Websites/webkit.org/coding/adding-features.html [new file with mode: 0644]
Websites/webkit.org/nav.inc

index 4bd63f1b49d7e4b2f7d6af06ded4f112d27c0484..33d1e30a688daf04f1c05a7eceafd7b140892e0b 100644 (file)
@@ -1,3 +1,13 @@
+2011-05-09  Eric Seidel  <eric@webkit.org>
+
+        Reviewed by Adam Barth.
+
+        Add guidelines for feature addition to webkit.org (per disccusion at contributor meeting)
+        https://bugs.webkit.org/show_bug.cgi?id=59672
+
+        * coding/adding-features.html: Added.
+        * nav.inc:
+
 2011-04-29  Pavel Feldman  <pfeldman@chromium.org>
 
         Not reviewed: adding image files for the blog post.
diff --git a/Websites/webkit.org/coding/adding-features.html b/Websites/webkit.org/coding/adding-features.html
new file mode 100644 (file)
index 0000000..96bdf70
--- /dev/null
@@ -0,0 +1,48 @@
+<?php
+    $title="Adding a new feature to WebKit";
+    include("../header.inc");
+?>
+<h2>Adding a feature to WebKit</h2>
+
+<p>WebKit is a large project, with many consumers.  We have a large set of optional features, subsets of which are used by many different ports.</p>
+
+<p>For the purposes of this discussion a feature is defined as follows:</p>
+
+<ol>
+<li>Ports of WebKit (new architecture, toolkit, etc.)
+<li>Build systems for WebKit.
+<li>Optional #define (ENABLE_, etc.)
+<li>Web-content-facing interface (elements, CSS properties, CSS values, DOM APIs, etc)
+<li>Dependencies on external libraries.
+</ol>
+
+<p>Additions/modifications to the native (embedding) API for WebKit layer for a single port do NOT count as features for our discussion.</p>
+
+<p>Adding a new feature to the project is a welcome addition!  However, the following guidelines are expected to be followed:</p>
+
+<ol>
+<li>All bugs which add features, are expected to be announced on webkit-dev.  Features impose a small cost on every contributor, and thus we attempt to notify every contributor of the addition of new features to the project.  An example announcement:
+
+<pre>
+To: webkit-dev@lists.webkit.org
+Subject: Adding ENABLE_SVG to WebCore
+
+Hi webkit-dev!  I wanted to let you know that I plan to add SVG support to WebKit.
+This support will be behind the ENABLE_SVG feature define. See:
+https://bugs.webkit.org/show_bug.cgi?id=3250
+
+We'll be setting up a buildbot to track then ENABLE_SVG build shortly. We expect
+this feature to be eventually enabled by all ports.  Looking forward to your comments.
+</pre>
+
+<li>All features/ports are expected to covered by a <a href="http://trac.webkit.org/wiki/BuildBot">buildbot</a> at <a href="build.webkit.org">build.webkit.org</a> within six months of their addition.  We want to encourage experimentation, but it's important to make sure we can maintain our experiments, buildbots allow us to do this.
+http://trac.webkit.org/wiki/BuildBot
+</ol>
+
+<p>Reviewers are expected to remind contributors when making feature additions to follow these guidelines.</p>
+
+<p>These guidelines were created in response to the "Can WebKit Say No?" session at the 2011 contributors meeting.  These guidelines should be regarded as "experimental" as we plan to review their effectiveness (and possibly amend/remove them) at the 2012 contributors meeting.</p>
+
+<?php
+    include("../footer.inc");
+?>
index 4d778a99059dc707ac5d54cfda1d6320754c9907..553bbddec504977e393fe1f49a499a65a4f73e6b 100644 (file)
@@ -17,6 +17,7 @@
         <li><a href="/building/debug.html">Debugging WebKit</a></li>
         <li><a href="/coding/contributing.html">Contributing Code</a></li>
         <li><a href="/coding/commit-review-policy.html">Commit and Review Policy</a></li>
+        <li><a href="/coding/adding-features.html">Adding Features</a></li>
         <li><a href="/security/">Security Policy</a></li>
 
         <li class="subtitle">Documentation</li>