You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2015/11/09 19:33:25 UTC

svn commit: r1713505 - /incubator/tinkerpop/site/docs/3.1.0-SNAPSHOT/developer.html

Author: spmallette
Date: Mon Nov  9 18:33:25 2015
New Revision: 1713505

URL: http://svn.apache.org/viewvc?rev=1713505&view=rev
Log:
Add section on license/notice guidance and dependencies in dev docs.

Modified:
    incubator/tinkerpop/site/docs/3.1.0-SNAPSHOT/developer.html

Modified: incubator/tinkerpop/site/docs/3.1.0-SNAPSHOT/developer.html
URL: http://svn.apache.org/viewvc/incubator/tinkerpop/site/docs/3.1.0-SNAPSHOT/developer.html?rev=1713505&r1=1713504&r2=1713505&view=diff
==============================================================================
--- incubator/tinkerpop/site/docs/3.1.0-SNAPSHOT/developer.html (original)
+++ incubator/tinkerpop/site/docs/3.1.0-SNAPSHOT/developer.html Mon Nov  9 18:33:25 2015
@@ -820,6 +820,7 @@ span.line-numbers { border-right: 1px so
 <li><a href="#_pull_request_format">Pull Request Format</a></li>
 </ul>
 </li>
+<li><a href="#dependencies">Dependencies</a></li>
 </ul>
 </li>
 </ul>
@@ -1498,6 +1499,98 @@ adjustments to text formatting."</p>
 </div>
 </div>
 </div>
+<div class="sect2">
+<h3 id="dependencies">Dependencies</h3>
+<div class="paragraph">
+<p>There are many dependencies on other open source libraries in TinkerPop modules. When adding dependencies or
+altering the version of a dependency, developers must consider the implications that may apply to the TinkerPop
+LICENSE and NOTICE files. There are two implications to consider:</p>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Does the dependency fit an Apache <em>approved</em> license?</p>
+</li>
+<li>
+<p>Given the addition or modification to a dependency, does it mean any change for TinkerPop LICENSE and NOTICE files?</p>
+</li>
+</ol>
+</div>
+<div class="paragraph">
+<p>Understanding these implications is important for insuring that  TinkerPop stays compliant with the Apache 2 license
+that it releases under.</p>
+</div>
+<div class="paragraph">
+<p>Regarding the first item, refer to the Apache Legal for a list of <a href="http://www.apache.org/legal/resolved.html">approved licenses</a>
+that are compatible with the Apache 2 license.</p>
+</div>
+<div class="paragraph">
+<p>The second item requires a bit more effort to follow. The Apache website offers a
+<a href="http://www.apache.org/dev/licensing-howto.html">how-to guide</a> on the approach to maintaining appropriate LICENSE
+and NOTICE files, but this guide is designed to offer some more specific guidance as it pertains to TinkerPop
+and its distribution.</p>
+</div>
+<div class="paragraph">
+<p>To get started, TinkerPop has both "source" and "binary" LICENSE/NOTICE files:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Source LICENSE/NOTICE relate to files packaged with the released source code distribution:
+<a href="https://github.com/apache/incubator-tinkerpop/blob/master/LICENSE">LICENSE</a> / <a href="https://github.com/apache/incubator-tinkerpop/blob/master/NOTICE">NOTICE</a></p>
+</li>
+<li>
+<p>Binary LICENSE/NOTICE relate to files packaged with the released binary distributions:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Gremlin Console <a href="https://github.com/apache/incubator-tinkerpop/blob/master/gremlin-console/src/main/LICENSE">LICENSE</a>
+/ <a href="https://github.com/apache/incubator-tinkerpop/blob/master/gremlin-console/src/main/NOTICE">NOTICE</a></p>
+</li>
+<li>
+<p>Gremlin Server <a href="https://github.com/apache/incubator-tinkerpop/blob/master/gremlin-server/src/main/LICENSE">LICENSE</a>
+/ <a href="https://github.com/apache/incubator-tinkerpop/blob/master/gremlin-server/src/main/NOTICE">NOTICE</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>As we don&#8217;t usually include any dependencies in the source distribution (i.e. the source zip distribution), there is
+typically no need to edit source LICENSE/NOTICE when editing a TinkerPop <code>pom.xml</code>. These files only need to be edited
+if the distribution has a file added to it.  Such a situation may arise from several scenarios, but it would most
+likely come from the addition of a source file from another library. In that case, edit LICENSE to include this file
+following the pattern already present there. Refer to the
+<a href="http://www.apache.org/dev/licensing-howto.html#mod-notice">Modifications to Notice</a> section from the Apache
+"how-to" to determine if changes are necessary there.</p>
+</div>
+<div class="paragraph">
+<p>The binary LICENSE/NOTICE is perhaps most impacted by changes to the various <code>pom.xml</code> files. After altering the
+<code>pom.xml</code> file of any module, build both Gremlin Console and Gremlin Server and examine the contents of both binary
+distributions, either:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>target/apache-gremlin-console-3.1.0-SNAPSHOT-distribution.zip</p>
+</li>
+<li>
+<p>target/apache-gremlin-server-3.1.0-SNAPSHOT-distribution.zip</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>There is a <em>near</em> one-to-one mapping between the jar files in those distributions and their respective LICENSE files.
+It is described as "near" because the distributions include TinkerPop jars which don&#8217;t need to be represented there
+and there are entries in LICENSE that refer to libraries that are present, but shaded in the gremlin-shaded module.
+Everything else should be listed and present under the appropriate license section.</p>
+</div>
+<div class="paragraph">
+<p>There is also a good chance that the TinkerPop binary NOTICE should be updated. Check if the newly added dependency
+contains a NOTICE of its own. If so, include that NOTICE in the TinkerPop NOTICE.</p>
+</div>
+</div>
 </div>
 </div>
 <h1 id="_release_process" class="sect0">Release Process</h1>
@@ -1562,7 +1655,7 @@ during this period.</p>
 <p>Deploy a final SNAPSHOT to the snapshot repository.</p>
 </li>
 <li>
-<p>Review LICENSE and NOTICE files to make sure that no changes are needed.</p>
+<p>Review LICENSE and NOTICE files to make sure that no <a href="#dependencies">changes are needed</a>.</p>
 </li>
 <li>
 <p>Review javadoc filters on the "Core API" docs to be sure nothing needs to change.</p>
@@ -2106,7 +2199,7 @@ roadmap:</p>
 </div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2015-11-09 06:25:31 -05:00
+Last updated 2015-11-09 13:30:12 -05:00
 </div>
 </div>
 </body>