1.1 --- a/html_src/code-submission.html Mon Jun 01 13:04:58 2009 -0400
1.2 +++ b/html_src/code-submission.html Tue Jun 02 06:43:05 2009 -0700
1.3 @@ -7,10 +7,10 @@
1.4 to ns-3 as a new feature, such as a new feature of an existing simulation
1.5 model, or a new model altogether. If you are interested in submitting a
1.6 bugfix to an existing ns-3 feature, or new documentation, see the companion
1.7 -page <a href="bug-submission.html">How to submit a bug report</a> or
1.8 -<a href="doc-submission.html">How to submit documentation</a> to ns-3.</p>
1.9 +sections <a href="contributing.html#bugs">How to submit a bug report</a> or
1.10 +<a href="contributing.html#documentation">How to submit documentation</a> to ns-3.</p>
1.11
1.12 -<p>First, we actively encourage submission of new features to ns-3.
1.13 +<p>We actively encourage submission of new features to ns-3.
1.14 Independent submissions are essential for open source projects, and
1.15 you will also be credited as an author of future versions of ns-3.
1.16 However, please keep in mind that there is already a large burden on the
1.17 @@ -31,7 +31,7 @@
1.18 <li>write associated documentation, tests, examples
1.19 <li>include a short description with each submission
1.20 <li>minimize the size of each submission
1.21 -<li>changes must be coherent!
1.22 +<li>changes should be coherent!
1.23 <li>split your code into multi-part submissions
1.24 <li>before sending a submission: ask yourself <i>if I were a reviewer, would I understand the submission?</i>
1.25 <li>pick a submission tool:
1.26 @@ -45,8 +45,8 @@
1.27 </ul>
1.28 <p>
1.29 If you do not have the time to follow through the process to include your
1.30 -code in the main tree, please see <a href="#out-of-tree">below</a> about contributing
1.31 -ns-3 code that is not maintained in the main tree.
1.32 +code in the main tree, please see <a href="#out-of-tree">below</a> about
1.33 +contributing ns-3 code that is not maintained in the main tree.
1.34 </p>
1.35
1.36 <h2>Licensing and coding style</h2>
1.37 @@ -412,8 +412,27 @@
1.38
1.39 </ol>
1.40
1.41 -<h2>Submitting out-of-tree code</h2>
1.42 +<h2><a name="out-of-tree">Submitting out-of-tree code</a></h2>
1.43
1.44 -<p>TODO: Write about how contributors can send a tarball
1.45 -for archiving at code.nsnam.org if they do not want to go through
1.46 -the process for main-tree code. Write about src/contrib.
1.47 +<p>Anyone who wants to provide access to code that has been developed
1.48 +to extend ns-3, but who chooses not to go through the above review process,
1.49 + may list its availability on our website. Furthermore,
1.50 +we will provide storage on a web server if needed. This type of code
1.51 +contribution will not be formally maintained by the project, although
1.52 +popular extensions might be adopted downstream.
1.53 +
1.54 +<p>We ask anyone who wishes to do this to provide at least this information
1.55 +on our wiki:
1.56 +<ul>
1.57 +<li>Authors,</li>
1.58 +<li>Name and description of the extension,</li>
1.59 +<li>How it is distributed (as a patch or full tarball),</li>
1.60 +<li>Location,</li>
1.61 +<li>Status (how it is maintained)</li>
1.62 +</ul>
1.63 +
1.64 +<p>The contribution will be stored on our wiki
1.65 +<a href="wiki/index.php/Contributed_Code">here</a>.
1.66 +If you need web server space for your extension, please
1.67 +contact one of the project maintainers.
1.68 +
2.1 --- a/html_src/contributing.html Mon Jun 01 13:04:58 2009 -0400
2.2 +++ b/html_src/contributing.html Tue Jun 02 06:43:05 2009 -0700
2.3 @@ -67,6 +67,10 @@
2.4 choice when editing the bug, allowing you to upload a patch. Alternatively,
2.5 you could provide a URL to a patch in the "Description" field.
2.6
2.7 +<p> Note that providing a simple, reduced test case that reliably
2.8 +reproduces the bug is often requested by the maintainers, so please try
2.9 +to craft such a test case and upload it to the tracker.
2.10 +
2.11 <h2><a name="help">Wiki and tutorials</a></h2>
2.12
2.13 <p> The project maintains a <a href="wiki">wiki</a> for
2.14 @@ -83,98 +87,31 @@
2.15 for ns-3 in the past; if you start such a tutorial for ns-3, we can link
2.16 to it from our tutorial page.
2.17
2.18 -<p>Finally, if you find something wrong or incomplete with the
2.19 -<a href="documents.html">project documentation</a>, such as the maintained
2.20 -tutorial and project manual, please contribute a patch or let the
2.21 -documentation maintainers know.
2.22 +<h2><a name="documentation">Documentation</a></h2>
2.23 +
2.24 +<p>We ask for your help in maintaining our
2.25 +<a href="documents.html">project documentation</a> if you find something
2.26 +wrong or outdated. Please contribute a patch or let the
2.27 +documentation maintainers know. Please also consider to contribute
2.28 +documentation that you may write about ns-3 models (e.g. if a chapter
2.29 +in your thesis has a detailed description of an ns-3 model). Our
2.30 +tutorial and manual source is kept in the doc/ directory of the main tree.
2.31
2.32 <h2><a name="contribute">Code contributions</a></h2>
2.33
2.34 <p>Many people use ns for their research and then would like to contribute
2.35 their extensions to the project. Some of these extensions are incorporated
2.36 into the main distribution, and some are maintained or archived as third-party
2.37 -contributed code. The practice of
2.38 +contributed code. While both The practice of
2.39 <a href="http://nsnam.isi.edu/nsnam/index.php/Contributed_Code">contributing
2.40 code</a> has made ns-2 very successful and we want to facilitate that as
2.41 much as possible.
2.42
2.43 -<h3>Licensing and Copyright</h3>
2.44 -
2.45 -<p>The project has decided upon <a href="http://www.fsf.org/licensing/licenses/info/GPLv2.html">GNU GPLv2</a> as the licensing structure.
2.46 -All simulation software in the ns-3 repository will be GNU GPLv2
2.47 -or GNU GPLv2-compatible. We are not asking for copyright transfer but we
2.48 -request that all contributors attest that their modifications
2.49 -can be provided under a GNU GPLv2 license or compatible license.
2.50 -
2.51 -<h3>Contributed code outside of the main distribution</h3>
2.52 -
2.53 -<p>Anyone who wants to provide access to code that has been developed
2.54 -to extend ns-3 may list its availability on our website. Furthermore,
2.55 -we will provide storage on a web server if needed. This type of code
2.56 -contribution will not be formally maintained by the project, although
2.57 -popular extensions might be adopted downstream.
2.58 -
2.59 -<p>We ask anyone who wishes to do this to provide at least this information
2.60 -on our wiki:
2.61 -<ul>
2.62 -<li>Authors,</li>
2.63 -<li>Name and description of the extension,</li>
2.64 -<li>How it is distributed (as a patch or full tarball),</li>
2.65 -<li>Location,</li>
2.66 -<li>Status (how it is maintained)</li>
2.67 -</ul>
2.68 -
2.69 -<p><a href="http://nsnam.isi.edu/nsnam/index.php/Contributed_Code#Wireless_and_Mobility">This link</a>
2.70 -provides examples of the type of information requested. The relevant
2.71 -page on our wiki is <a href="wiki/index.php/Contributed_Code">here</a>. If you need web server space for your extension, please
2.72 -contact one of the project maintainers.
2.73 -
2.74 -<h3>Contributed code for the main distribution</h3>
2.75 -
2.76 -<p>If you would like the project to maintain an extension of yours in
2.77 -the main distribution, or you would like to work towards that end goal,
2.78 -you are welcome to propose and work on this, but please keep these things
2.79 -in mind along the way:
2.80 -<ul>
2.81 -<li> to avoid overlapping and conflicting contributions, please send an
2.82 -email to the ns-developers list stating your interest in working on a
2.83 -specific part of the models and trying to explain how you would like to
2.84 -implement it, what resources you have, etc.</li>
2.85 -<li> you should be prepared to work together with the other potential
2.86 -contributors who want to work on the same models.</li>
2.87 -<li> you should be prepared to go through code reviews with the
2.88 -development team prior to integration. The goal of these
2.89 -code reviews is to:
2.90 -<ul>
2.91 -<li>ensure adherence to the <a href="codingstyle.html">coding style</a> of
2.92 -the project,</li>
2.93 -<li>ensure that the structure of your code has a certain
2.94 -coherence with regard to the rest of the ns-3 codebase,</li>
2.95 -<li>improve the quality of the code: we strongly believe in
2.96 -the old saying: "many eyes make all bugs shallow",</li>
2.97 -<li>increase code reuse by trying to generalize certain
2.98 -useful pieces of your code to make them available to
2.99 -other models,</li>
2.100 -<li> encourage unit tests, validation, and documentation.
2.101 -You should be prepared to try to integrate as many tests
2.102 -in the codebase as possible: we understand that writing
2.103 -tests is not necessarily fun and that not everyone is convinced
2.104 -that they improve the code-writing poductivity which is why
2.105 -we do not enforce strict rules about testing. However,
2.106 -we expect model authors to answer basic questions about
2.107 -how they plan to test, document, and validate their models.</li>
2.108 -</ul>
2.109 -<li> you should be prepared to maintain your model once it is
2.110 -integrated: while we consider every bug filed against the
2.111 -simulator as being a bug we must deal with and while we
2.112 -will try to fix as many bugs as humanly possible, we
2.113 -also expect model authors to act as responsible maintainers
2.114 -and be reactive to bug reports concerning their models.</li>
2.115 -</li>
2.116 -</ul>
2.117 +<p> Please read <a href="code-submission.html">our code submissions page</a>
2.118 +for options and instructions on submitting code to ns-3.
2.119
2.120 <p>The project is maintaining a
2.121 -<a href="wiki/index.php/Suggested_Projects">wiki page</a>
2.122 +<a href="wiki/index.php/Current_Development#Suggested_Projects"> wiki page</a>
2.123 for suggested projects for interested researchers or students to undertake.
2.124
2.125 <h2><a name="maintain">Maintaining the simulator</a></h2>