Author: rhs
Date: Mon Feb  2 20:52:34 2015
New Revision: 1656568

URL: http://svn.apache.org/r1656568
Log:
added some content on contributing to proton

Added:
    qpid/site/docs/proton/contributing.html
    qpid/site/docs/proton/proton-j-proton-c.html
    qpid/site/docs/proton/submitting-patches.html
    qpid/site/input/proton/contributing.md
    qpid/site/input/proton/proton-j-proton-c.md
    qpid/site/input/proton/submitting-patches.md
Modified:
    qpid/site/docs/proton/index.html
    qpid/site/input/proton/index.md

Added: qpid/site/docs/proton/contributing.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/proton/contributing.html?rev=1656568&view=auto
==============================================================================
--- qpid/site/docs/proton/contributing.html (added)
+++ qpid/site/docs/proton/contributing.html Mon Feb  2 20:52:34 2015
@@ -0,0 +1,142 @@
+<!DOCTYPE html>
+<!--
+ -
+ - Licensed to the Apache Software Foundation (ASF) under one
+ - or more contributor license agreements.  See the NOTICE file
+ - distributed with this work for additional information
+ - regarding copyright ownership.  The ASF licenses this file
+ - to you under the Apache License, Version 2.0 (the
+ - "License"); you may not use this file except in compliance
+ - with the License.  You may obtain a copy of the License at
+ -
+ -   http://www.apache.org/licenses/LICENSE-2.0
+ -
+ - Unless required by applicable law or agreed to in writing,
+ - software distributed under the License is distributed on an
+ - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ - KIND, either express or implied.  See the License for the
+ - specific language governing permissions and limitations
+ - under the License.
+ -
+-->
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
+  <head>
+    <title>Contributing to Proton - Apache Qpid&#8482;</title>
+    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
+    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
+    <script type="text/javascript">var _deferredFunctions = [];</script>
+    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
+    <!--[if lte IE 8]>
+      <link rel="stylesheet" href="/ie.css" type="text/css"/>
+      <script type="text/javascript" src="/html5shiv.js"></script>
+    <![endif]-->
+  </head>
+  <body>
+    <div id="-content">
+      <div id="-top" class="panel">
+        <a id="-menu-link"><img width="16" height="16" 
src="data:image/png;base64," alt="Menu"/></a>
+
+        <a id="-search-link"><img width="22" height="16" 
src="data:image/png;base64," alt="Search"/></a>
+
+        <ul id="-global-navigation">
+          <li><a id="-logotype" href="/index.html">Apache 
Qpid<sup>&#8482;</sup></a></li>
+          <li><a href="/download.html">Download</a></li>
+          <li><a href="/documentation.html">Documentation</a></li>
+          <li><a href="/discussion.html">Discussion</a></li>
+          <li><a href="/issues.html">Issues</a></li>
+          <li><a href="/source-code.html">Source Code</a></li>
+          <li><a href="/resources.html">More Resources</a></li>
+        </ul>
+      </div>
+
+      <div id="-menu" class="panel" style="display: none;">
+        <section>
+          <h3>Project</h3>
+
+          <ul>
+            <li><a href="/overview.html">Overview</a></li>
+            <li><a href="/proton/index.html">Qpid Proton</a></li>
+            <li><a href="/contributors.html">Contributors</a></li>
+            <li><a href="/get-involved.html">Get involved</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>Software</h3>
+
+          <ul>
+            <li><a href="/download.html">Download</a></li>
+            <li><a href="/documentation.html">Documentation</a></li>
+            <li><a href="/components/index.html">Components</a></li>
+            <li><a href="/releases/index.html">Releases</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>Resources</h3>
+
+          <ul>
+            <li><a href="/discussion.html">Discussion</a></li>
+            <li><a href="/issues.html">Issues</a></li>
+            <li><a href="/source-code.html">Source code</a></li>
+            <li><a href="/resources.html">More resources</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>More</h3>
+
+          <ul>
+            <li><a href="/amqp.html">AMQP</a></li>
+            <li><a href="/developer.html">Developer central</a></li>
+            <li><a 
href="https://cwiki.apache.org/confluence/display/qpid/";>Wiki</a></li>
+          </ul>
+        </section>
+      </div>
+
+      <div id="-search" class="panel" style="display: none;">
+        <form action="http://www.google.com/search"; method="get">
+          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
+          <input type="text" name="q" maxlength="255" autofocus="autofocus" 
tabindex="1"/>
+          <button type="submit">Search</button>
+          <p><a href="/search.html">More ways to search</a></p>
+        </form>
+      </div>
+
+      <div id="-middle" class="panel">
+        <ul id="-path-navigation"><li><a href="/proton/index.html">Qpid 
Proton</a></li><li>Contributing to Proton</li></ul>
+        <h1 id="contributing-to-proton">Contributing to Proton</h1>
+
+<ul>
+<li><a href="submitting-patches.html">Submitting Patches</a></li>
+<li><a href="proton-j-proton-c.html">Proton-J/Proton-C</a></li>
+</ul>
+
+
+        <hr/>
+
+        <ul id="-apache-navigation">
+          <li><a href="http://www.apache.org/";>Apache</a></li>
+          <li><a href="http://www.apache.org/licenses/";>License</a></li>
+          <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+          <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks!</a></li>
+          <li><a href="http://www.apache.org/security/";>Security</a></li>
+          <li><a href="http://www.apache.org/";><img id="-apache-feather" 
width="48" height="14" src="data:image/png;base64," alt="Apache"/></a></li>
+        </ul>
+
+        <p id="-legal">
+          Apache Qpid, Messaging built on AMQP; Copyright &#169; 2013
+          The Apache Software Foundation; Licensed under
+          the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache
+          License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
+          Proton, Apache, the Apache feather logo, and the Apache Qpid
+          project logo are trademarks of The Apache Software
+          Foundation; All other marks mentioned may be trademarks or
+          registered trademarks of their respective owners
+        </p>
+      </div>
+    </div>
+  </body>
+</html>

Modified: qpid/site/docs/proton/index.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/proton/index.html?rev=1656568&r1=1656567&r2=1656568&view=diff
==============================================================================
--- qpid/site/docs/proton/index.html (original)
+++ qpid/site/docs/proton/index.html Mon Feb  2 20:52:34 2015
@@ -173,6 +173,7 @@ address.</p>
 
 <ul>
 <li><a href="development.html">Development plans</a></li>
+<li><a href="contributing.html">Contributing to Proton</a></li>
 <li><a href="https://cwiki.apache.org/confluence/display/qpid/proton";>Proton 
wiki pages</a></li>
 </ul>
 

Added: qpid/site/docs/proton/proton-j-proton-c.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/proton/proton-j-proton-c.html?rev=1656568&view=auto
==============================================================================
--- qpid/site/docs/proton/proton-j-proton-c.html (added)
+++ qpid/site/docs/proton/proton-j-proton-c.html Mon Feb  2 20:52:34 2015
@@ -0,0 +1,185 @@
+<!DOCTYPE html>
+<!--
+ -
+ - Licensed to the Apache Software Foundation (ASF) under one
+ - or more contributor license agreements.  See the NOTICE file
+ - distributed with this work for additional information
+ - regarding copyright ownership.  The ASF licenses this file
+ - to you under the Apache License, Version 2.0 (the
+ - "License"); you may not use this file except in compliance
+ - with the License.  You may obtain a copy of the License at
+ -
+ -   http://www.apache.org/licenses/LICENSE-2.0
+ -
+ - Unless required by applicable law or agreed to in writing,
+ - software distributed under the License is distributed on an
+ - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ - KIND, either express or implied.  See the License for the
+ - specific language governing permissions and limitations
+ - under the License.
+ -
+-->
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
+  <head>
+    <title>Proton-J/Proton-C - Apache Qpid&#8482;</title>
+    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
+    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
+    <script type="text/javascript">var _deferredFunctions = [];</script>
+    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
+    <!--[if lte IE 8]>
+      <link rel="stylesheet" href="/ie.css" type="text/css"/>
+      <script type="text/javascript" src="/html5shiv.js"></script>
+    <![endif]-->
+  </head>
+  <body>
+    <div id="-content">
+      <div id="-top" class="panel">
+        <a id="-menu-link"><img width="16" height="16" 
src="data:image/png;base64," alt="Menu"/></a>
+
+        <a id="-search-link"><img width="22" height="16" 
src="data:image/png;base64," alt="Search"/></a>
+
+        <ul id="-global-navigation">
+          <li><a id="-logotype" href="/index.html">Apache 
Qpid<sup>&#8482;</sup></a></li>
+          <li><a href="/download.html">Download</a></li>
+          <li><a href="/documentation.html">Documentation</a></li>
+          <li><a href="/discussion.html">Discussion</a></li>
+          <li><a href="/issues.html">Issues</a></li>
+          <li><a href="/source-code.html">Source Code</a></li>
+          <li><a href="/resources.html">More Resources</a></li>
+        </ul>
+      </div>
+
+      <div id="-menu" class="panel" style="display: none;">
+        <section>
+          <h3>Project</h3>
+
+          <ul>
+            <li><a href="/overview.html">Overview</a></li>
+            <li><a href="/proton/index.html">Qpid Proton</a></li>
+            <li><a href="/contributors.html">Contributors</a></li>
+            <li><a href="/get-involved.html">Get involved</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>Software</h3>
+
+          <ul>
+            <li><a href="/download.html">Download</a></li>
+            <li><a href="/documentation.html">Documentation</a></li>
+            <li><a href="/components/index.html">Components</a></li>
+            <li><a href="/releases/index.html">Releases</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>Resources</h3>
+
+          <ul>
+            <li><a href="/discussion.html">Discussion</a></li>
+            <li><a href="/issues.html">Issues</a></li>
+            <li><a href="/source-code.html">Source code</a></li>
+            <li><a href="/resources.html">More resources</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>More</h3>
+
+          <ul>
+            <li><a href="/amqp.html">AMQP</a></li>
+            <li><a href="/developer.html">Developer central</a></li>
+            <li><a 
href="https://cwiki.apache.org/confluence/display/qpid/";>Wiki</a></li>
+          </ul>
+        </section>
+      </div>
+
+      <div id="-search" class="panel" style="display: none;">
+        <form action="http://www.google.com/search"; method="get">
+          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
+          <input type="text" name="q" maxlength="255" autofocus="autofocus" 
tabindex="1"/>
+          <button type="submit">Search</button>
+          <p><a href="/search.html">More ways to search</a></p>
+        </form>
+      </div>
+
+      <div id="-middle" class="panel">
+        <ul id="-path-navigation"><li><a href="/proton/index.html">Qpid 
Proton</a></li><li>Proton-J/Proton-C</li></ul>
+        <h1 id="proton-jproton-c">Proton-J/Proton-C</h1>
+
+<p>If you're new to proton development, you might be wondering why there
+are two apparently independent projects (proton-c and proton-j) that
+share the same git repo and release cycle.</p>
+
+<p>These projects aren't actually quite as independent as they look.
+There is a common test suite that runs against both implementations to
+help keep them in sync with each other. This is the python test suite
+that lives underneath the top level <a 
href="https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;a=tree;f=tests/python";>tests/python</a>
+directory. These tests have been integrated into the maven build via
+jython so that the whole java build looks like a normal maven build
+and java developers don't need to deal with cmake or getting jython
+themselves or anything that's outside of the normal java experience.</p>
+
+<p>Likewise, the cmake build will detect if java is unavailable and opt
+out of building the java code, so it's easy for C developers to
+pretend that Java doesn't exist. It also does this for all the
+different bindings, e.g. if perl or ruby isn't installed it will not
+attempt to build them.</p>
+
+<p>As a core proton developer, it's a good idea to make a point of having
+all the optional stuff enabled. This will ensure that you are testing
+any of your changes against the widest range of code possible.</p>
+
+<p>It's also good to be aware of exactly how the common test suite
+integrates with both proton-c and proton-j. The python binding
+actually consists of a hand written wrapper layer that encapsulates
+the raw swig generated API. The raw swig API is actually much lower
+level and is available in the 'cproton' module. When you run the
+python test suite in jython, the swig generated cproton doesn't
+actually exist since it is a C module. Instead, you get the cproton.py
+that resides in the java source tree underneath
+<a 
href="https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;a=tree;f=proton-j/src/main/resources";>proton-j/src/main/resources</a>.
+This cproton.py and its dependent files serve as a shim that adapts
+between the Java API and the C API. These files can actually be quite
+handy as a reference for how to translate a given idiom from proton-j
+into proton-c or vice versa.</p>
+
+<p>You might notice some parts of the shim are stubbed out, e.g. like
+this:</p>
+
+<pre><code>def pn_flowcontroller(window):
+    raise Skipped()
+</code></pre>
+
+<p>Throwing a Skipped exception will signal to the test runner that
+whatever code is being called is not available, and the test will be
+reported as "skipped" rather than flagged as an error.</p>
+
+
+        <hr/>
+
+        <ul id="-apache-navigation">
+          <li><a href="http://www.apache.org/";>Apache</a></li>
+          <li><a href="http://www.apache.org/licenses/";>License</a></li>
+          <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+          <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks!</a></li>
+          <li><a href="http://www.apache.org/security/";>Security</a></li>
+          <li><a href="http://www.apache.org/";><img id="-apache-feather" 
width="48" height="14" src="data:image/png;base64," alt="Apache"/></a></li>
+        </ul>
+
+        <p id="-legal">
+          Apache Qpid, Messaging built on AMQP; Copyright &#169; 2013
+          The Apache Software Foundation; Licensed under
+          the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache
+          License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
+          Proton, Apache, the Apache feather logo, and the Apache Qpid
+          project logo are trademarks of The Apache Software
+          Foundation; All other marks mentioned may be trademarks or
+          registered trademarks of their respective owners
+        </p>
+      </div>
+    </div>
+  </body>
+</html>

Added: qpid/site/docs/proton/submitting-patches.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/proton/submitting-patches.html?rev=1656568&view=auto
==============================================================================
--- qpid/site/docs/proton/submitting-patches.html (added)
+++ qpid/site/docs/proton/submitting-patches.html Mon Feb  2 20:52:34 2015
@@ -0,0 +1,170 @@
+<!DOCTYPE html>
+<!--
+ -
+ - Licensed to the Apache Software Foundation (ASF) under one
+ - or more contributor license agreements.  See the NOTICE file
+ - distributed with this work for additional information
+ - regarding copyright ownership.  The ASF licenses this file
+ - to you under the Apache License, Version 2.0 (the
+ - "License"); you may not use this file except in compliance
+ - with the License.  You may obtain a copy of the License at
+ -
+ -   http://www.apache.org/licenses/LICENSE-2.0
+ -
+ - Unless required by applicable law or agreed to in writing,
+ - software distributed under the License is distributed on an
+ - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ - KIND, either express or implied.  See the License for the
+ - specific language governing permissions and limitations
+ - under the License.
+ -
+-->
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
+  <head>
+    <title>Submitting Patches - Apache Qpid&#8482;</title>
+    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
+    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
+    <script type="text/javascript">var _deferredFunctions = [];</script>
+    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
+    <!--[if lte IE 8]>
+      <link rel="stylesheet" href="/ie.css" type="text/css"/>
+      <script type="text/javascript" src="/html5shiv.js"></script>
+    <![endif]-->
+  </head>
+  <body>
+    <div id="-content">
+      <div id="-top" class="panel">
+        <a id="-menu-link"><img width="16" height="16" 
src="data:image/png;base64," alt="Menu"/></a>
+
+        <a id="-search-link"><img width="22" height="16" 
src="data:image/png;base64," alt="Search"/></a>
+
+        <ul id="-global-navigation">
+          <li><a id="-logotype" href="/index.html">Apache 
Qpid<sup>&#8482;</sup></a></li>
+          <li><a href="/download.html">Download</a></li>
+          <li><a href="/documentation.html">Documentation</a></li>
+          <li><a href="/discussion.html">Discussion</a></li>
+          <li><a href="/issues.html">Issues</a></li>
+          <li><a href="/source-code.html">Source Code</a></li>
+          <li><a href="/resources.html">More Resources</a></li>
+        </ul>
+      </div>
+
+      <div id="-menu" class="panel" style="display: none;">
+        <section>
+          <h3>Project</h3>
+
+          <ul>
+            <li><a href="/overview.html">Overview</a></li>
+            <li><a href="/proton/index.html">Qpid Proton</a></li>
+            <li><a href="/contributors.html">Contributors</a></li>
+            <li><a href="/get-involved.html">Get involved</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>Software</h3>
+
+          <ul>
+            <li><a href="/download.html">Download</a></li>
+            <li><a href="/documentation.html">Documentation</a></li>
+            <li><a href="/components/index.html">Components</a></li>
+            <li><a href="/releases/index.html">Releases</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>Resources</h3>
+
+          <ul>
+            <li><a href="/discussion.html">Discussion</a></li>
+            <li><a href="/issues.html">Issues</a></li>
+            <li><a href="/source-code.html">Source code</a></li>
+            <li><a href="/resources.html">More resources</a></li>
+          </ul>
+        </section>
+
+        <section>
+          <h3>More</h3>
+
+          <ul>
+            <li><a href="/amqp.html">AMQP</a></li>
+            <li><a href="/developer.html">Developer central</a></li>
+            <li><a 
href="https://cwiki.apache.org/confluence/display/qpid/";>Wiki</a></li>
+          </ul>
+        </section>
+      </div>
+
+      <div id="-search" class="panel" style="display: none;">
+        <form action="http://www.google.com/search"; method="get">
+          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
+          <input type="text" name="q" maxlength="255" autofocus="autofocus" 
tabindex="1"/>
+          <button type="submit">Search</button>
+          <p><a href="/search.html">More ways to search</a></p>
+        </form>
+      </div>
+
+      <div id="-middle" class="panel">
+        <ul id="-path-navigation"><li><a href="/proton/index.html">Qpid 
Proton</a></li><li>Submitting Patches</li></ul>
+        <h1 id="submitting-patches">Submitting Patches</h1>
+
+<p>All contributions are greatly appreciated, but the process can be
+significantly streamlined by taking note of the following guidelines.</p>
+
+<h2 id="run-the-full-test-suite">Run the full test suite</h2>
+
+<p>Make sure the full test suite runs with your change in place. Even if
+you think your change is very localized, there may be subtle
+repurcussions that impact other parts of the code. If your change
+causes the test suite to fail, then it can't be accepted until a more
+complete fix is prepared.</p>
+
+<h2 id="keep-it-small">Keep it small</h2>
+
+<p>Most of the people that work on proton have a day job of some kind. If
+reviewing a patch requires carving out multiple hours/days, then it is
+much less likely to happen. On the other hand if the patch is neat,
+self contained, and just works then it can be reviewed and applied
+quite quickly.</p>
+
+<p>If you happen to have a larger body of work you'd like to contribute
+and there is a good reason that it's difficult to break it down into
+small pieces, that's ok too, but expect the whole process to take a
+bit longer. In this situation you can help things along by providing
+an outline/overview in english to make the work easier to digest.</p>
+
+<h2 id="keep-it-clean">Keep it clean</h2>
+
+<p>Extraneous whitespace can clutter up diffs and make them more
+difficult to read than they need to be. It's generally good practice
+to avoid introducing extraneous whitespace into files under source
+control. Most editors can be configured to remove and/or display
+extraneous whitespace automatically.</p>
+
+
+        <hr/>
+
+        <ul id="-apache-navigation">
+          <li><a href="http://www.apache.org/";>Apache</a></li>
+          <li><a href="http://www.apache.org/licenses/";>License</a></li>
+          <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+          <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks!</a></li>
+          <li><a href="http://www.apache.org/security/";>Security</a></li>
+          <li><a href="http://www.apache.org/";><img id="-apache-feather" 
width="48" height="14" src="data:image/png;base64," alt="Apache"/></a></li>
+        </ul>
+
+        <p id="-legal">
+          Apache Qpid, Messaging built on AMQP; Copyright &#169; 2013
+          The Apache Software Foundation; Licensed under
+          the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache
+          License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
+          Proton, Apache, the Apache feather logo, and the Apache Qpid
+          project logo are trademarks of The Apache Software
+          Foundation; All other marks mentioned may be trademarks or
+          registered trademarks of their respective owners
+        </p>
+      </div>
+    </div>
+  </body>
+</html>

Added: qpid/site/input/proton/contributing.md
URL: 
http://svn.apache.org/viewvc/qpid/site/input/proton/contributing.md?rev=1656568&view=auto
==============================================================================
--- qpid/site/input/proton/contributing.md (added)
+++ qpid/site/input/proton/contributing.md Mon Feb  2 20:52:34 2015
@@ -0,0 +1,23 @@
+;;
+;; Licensed to the Apache Software Foundation (ASF) under one
+;; or more contributor license agreements.  See the NOTICE file
+;; distributed with this work for additional information
+;; regarding copyright ownership.  The ASF licenses this file
+;; to you under the Apache License, Version 2.0 (the
+;; "License"); you may not use this file except in compliance
+;; with the License.  You may obtain a copy of the License at
+;; 
+;;   http://www.apache.org/licenses/LICENSE-2.0
+;; 
+;; Unless required by applicable law or agreed to in writing,
+;; software distributed under the License is distributed on an
+;; "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+;; KIND, either express or implied.  See the License for the
+;; specific language governing permissions and limitations
+;; under the License.
+;;
+
+# Contributing to Proton
+
+ - [Submitting Patches](submitting-patches.html)
+ - [Proton-J/Proton-C](proton-j-proton-c.html)

Modified: qpid/site/input/proton/index.md
URL: 
http://svn.apache.org/viewvc/qpid/site/input/proton/index.md?rev=1656568&r1=1656567&r2=1656568&view=diff
==============================================================================
--- qpid/site/input/proton/index.md (original)
+++ qpid/site/input/proton/index.md Mon Feb  2 20:52:34 2015
@@ -71,6 +71,7 @@ address.
 ## Resources
 
  - [Development plans](development.html)
+ - [Contributing to Proton](contributing.html)
  - [Proton wiki pages](https://cwiki.apache.org/confluence/display/qpid/proton)
 
 </div>

Added: qpid/site/input/proton/proton-j-proton-c.md
URL: 
http://svn.apache.org/viewvc/qpid/site/input/proton/proton-j-proton-c.md?rev=1656568&view=auto
==============================================================================
--- qpid/site/input/proton/proton-j-proton-c.md (added)
+++ qpid/site/input/proton/proton-j-proton-c.md Mon Feb  2 20:52:34 2015
@@ -0,0 +1,68 @@
+;;
+;; Licensed to the Apache Software Foundation (ASF) under one
+;; or more contributor license agreements.  See the NOTICE file
+;; distributed with this work for additional information
+;; regarding copyright ownership.  The ASF licenses this file
+;; to you under the Apache License, Version 2.0 (the
+;; "License"); you may not use this file except in compliance
+;; with the License.  You may obtain a copy of the License at
+;; 
+;;   http://www.apache.org/licenses/LICENSE-2.0
+;; 
+;; Unless required by applicable law or agreed to in writing,
+;; software distributed under the License is distributed on an
+;; "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+;; KIND, either express or implied.  See the License for the
+;; specific language governing permissions and limitations
+;; under the License.
+;;
+
+# Proton-J/Proton-C
+
+If you're new to proton development, you might be wondering why there
+are two apparently independent projects (proton-c and proton-j) that
+share the same git repo and release cycle.
+
+These projects aren't actually quite as independent as they look.
+There is a common test suite that runs against both implementations to
+help keep them in sync with each other. This is the python test suite
+that lives underneath the top level 
[tests/python](https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;a=tree;f=tests/python)
+directory. These tests have been integrated into the maven build via
+jython so that the whole java build looks like a normal maven build
+and java developers don't need to deal with cmake or getting jython
+themselves or anything that's outside of the normal java experience.
+
+Likewise, the cmake build will detect if java is unavailable and opt
+out of building the java code, so it's easy for C developers to
+pretend that Java doesn't exist. It also does this for all the
+different bindings, e.g. if perl or ruby isn't installed it will not
+attempt to build them.
+
+As a core proton developer, it's a good idea to make a point of having
+all the optional stuff enabled. This will ensure that you are testing
+any of your changes against the widest range of code possible.
+
+It's also good to be aware of exactly how the common test suite
+integrates with both proton-c and proton-j. The python binding
+actually consists of a hand written wrapper layer that encapsulates
+the raw swig generated API. The raw swig API is actually much lower
+level and is available in the 'cproton' module. When you run the
+python test suite in jython, the swig generated cproton doesn't
+actually exist since it is a C module. Instead, you get the cproton.py
+that resides in the java source tree underneath
+[proton-j/src/main/resources](https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;a=tree;f=proton-j/src/main/resources).
+This cproton.py and its dependent files serve as a shim that adapts
+between the Java API and the C API. These files can actually be quite
+handy as a reference for how to translate a given idiom from proton-j
+into proton-c or vice versa.
+
+You might notice some parts of the shim are stubbed out, e.g. like
+this:
+
+
+    def pn_flowcontroller(window):
+        raise Skipped()
+
+Throwing a Skipped exception will signal to the test runner that
+whatever code is being called is not available, and the test will be
+reported as "skipped" rather than flagged as an error.

Added: qpid/site/input/proton/submitting-patches.md
URL: 
http://svn.apache.org/viewvc/qpid/site/input/proton/submitting-patches.md?rev=1656568&view=auto
==============================================================================
--- qpid/site/input/proton/submitting-patches.md (added)
+++ qpid/site/input/proton/submitting-patches.md Mon Feb  2 20:52:34 2015
@@ -0,0 +1,53 @@
+;;
+;; Licensed to the Apache Software Foundation (ASF) under one
+;; or more contributor license agreements.  See the NOTICE file
+;; distributed with this work for additional information
+;; regarding copyright ownership.  The ASF licenses this file
+;; to you under the Apache License, Version 2.0 (the
+;; "License"); you may not use this file except in compliance
+;; with the License.  You may obtain a copy of the License at
+;; 
+;;   http://www.apache.org/licenses/LICENSE-2.0
+;; 
+;; Unless required by applicable law or agreed to in writing,
+;; software distributed under the License is distributed on an
+;; "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+;; KIND, either express or implied.  See the License for the
+;; specific language governing permissions and limitations
+;; under the License.
+;;
+
+# Submitting Patches
+
+All contributions are greatly appreciated, but the process can be
+significantly streamlined by taking note of the following guidelines.
+
+## Run the full test suite
+
+Make sure the full test suite runs with your change in place. Even if
+you think your change is very localized, there may be subtle
+repurcussions that impact other parts of the code. If your change
+causes the test suite to fail, then it can't be accepted until a more
+complete fix is prepared.
+
+## Keep it small
+
+Most of the people that work on proton have a day job of some kind. If
+reviewing a patch requires carving out multiple hours/days, then it is
+much less likely to happen. On the other hand if the patch is neat,
+self contained, and just works then it can be reviewed and applied
+quite quickly.
+
+If you happen to have a larger body of work you'd like to contribute
+and there is a good reason that it's difficult to break it down into
+small pieces, that's ok too, but expect the whole process to take a
+bit longer. In this situation you can help things along by providing
+an outline/overview in english to make the work easier to digest.
+
+## Keep it clean
+
+Extraneous whitespace can clutter up diffs and make them more
+difficult to read than they need to be. It's generally good practice
+to avoid introducing extraneous whitespace into files under source
+control. Most editors can be configured to remove and/or display
+extraneous whitespace automatically.



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to