/usr/share/doc/pywps/html/development.html is in pywps-doc 4.0.0-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Developers Guide — PyWPS 4.0.0 documentation</title>
<link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '4.0.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/mathjax/MathJax.js?config=tex-ams-mml_htmlormml"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Exceptions" href="exceptions.html" />
<link rel="prev" title="PyWPS API Doc" href="api.html" />
<link rel="stylesheet" href="_static/custom.css" type="text/css" />
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
</head>
<body>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="developers-guide">
<span id="development"></span><h1>Developers Guide<a class="headerlink" href="#developers-guide" title="Permalink to this headline">¶</a></h1>
<p>If you identify a bug in the PyWPS code base and want to fix it, if you would
like to add further functionality, or if you wish to expand the documentation,
you are welcomed to contribute such changes. However, contributions to the
code base must follow an orderly process, described below. This facilitates
both the work on your contribution as its review.</p>
<div class="section" id="github-account">
<h2>0. GitHub account<a class="headerlink" href="#github-account" title="Permalink to this headline">¶</a></h2>
<p>The PyWPS source code is hosted at GitHub, therefore you need an account to contribute.
If you do not have one, you can follow
<a class="reference external" href="https://help.github.com/categories/setup/">these instructions</a>.</p>
</div>
<div class="section" id="open-a-new-issue">
<h2>1. Open a new issue<a class="headerlink" href="#open-a-new-issue" title="Permalink to this headline">¶</a></h2>
<p>The first action to take is to clearly identify the goal of your contribution.
Be it a bug fix, a new feature or documentation, a clear record must be left
for future tracking. This is made by opening an issue at the <a class="reference external" href="https://github.com/geopython/pywps/issues">GitHub issue
tracker</a>. In this new issue you
should identify not only the subject or goal, but also a draft
of the changes you expect to achieve. For example:</p>
<blockquote>
<div><p><strong>Title</strong>: Process class must be magic</p>
<p><strong>Description</strong>: The Process class must start performing some magics. Give it
a magic wand.</p>
</div></blockquote>
</div>
<div class="section" id="fork-and-clone-the-pywps-repository">
<h2>2. Fork and clone the PyWPS repository<a class="headerlink" href="#fork-and-clone-the-pywps-repository" title="Permalink to this headline">¶</a></h2>
<p>When you start modifying to the code, there is always the possibility for
something to go wrong, rendering PyWPS unusable. The first action to avoid such
a situation is to create a development sand box. In GitHub this can
easily be made by creating a fork of the main PyWPS repository. Access the
<a class="reference external" href="https://github.com/geopython/PyWPS">PyWPS code repository</a> and click the
<em>Fork</em> button. This action creates a copy of the repository associated with
your GitHub user. For more details please read <a class="reference external" href="https://guides.github.com/activities/forking/">the forking guide</a>.</p>
<p>Now you can clone this forked repository into your development environment,
issuing a command like:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/<</span><span class="n">github</span><span class="o">-</span><span class="n">user</span><span class="o">>/</span><span class="n">PyWPS</span><span class="o">.</span><span class="n">git</span> <span class="n">pywps</span>
</pre></div>
</div>
<p>Where you should replace <em><github-user></em> with your GitHub user name.</p>
<p>You can finally start programming your new feature, or fixing that bug you
found. Keep in mind that PyWPS depends on a few libraries, refer to the
<a class="reference internal" href="install.html#installation"><span class="std std-ref">Installation</span></a> section to make sure you have all of them installed.</p>
</div>
<div class="section" id="commit-and-pull-request">
<h2>3. Commit and pull request<a class="headerlink" href="#commit-and-pull-request" title="Permalink to this headline">¶</a></h2>
<p>If your modification to code is relatively small and can be included in a
single <em>commit</em> then all you need to is reference the issue in the <strong>commit</strong>
message, e.g.:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">commit</span> <span class="o">-</span><span class="n">m</span> <span class="s2">"Fixes #107"</span>
</pre></div>
</div>
<p>Where <em>107</em> is the number of the issue you opened initially in the PyWPS
issue tracker. Please refer to <a class="reference external" href="https://help.github.com/articles/closing-issues-via-commit-messages/">the guide on closing issues with commits
messages</a>. Then
you push the changes to your forked repository, issuing a command like:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">push</span> <span class="n">origin</span> <span class="n">master</span>
</pre></div>
</div>
<p>Finally you an create a pull request. This it is a formal request to merge your
contribution with the code base; it is fully managed by GitHub and greatly
facilitates the review process. You do so by accessing the repository
associated with your user and clicking the <em>New pull request</em> button. Make sure
your contribution is not creating conflicts and click <em>Create pull request</em>.
If needed, there is also a <a class="reference external" href="https://help.github.com/articles/creating-a-pull-request/">guide on pull requests</a>.</p>
<p>If you contribution is more substantial, and composed of multiple commits, then
you must identify the issue it closes in the pull request itself. Check out
<a class="reference external" href="https://github.com/blog/1506-closing-issues-via-pull-requests">this guide</a> for
the details.</p>
<p>The members of the PyWPS PSC are then notified if your pull request. They
review your contribution and hopefully accept merging it to the code base.</p>
</div>
<div class="section" id="updating-local-repository">
<h2>4. Updating local repository<a class="headerlink" href="#updating-local-repository" title="Permalink to this headline">¶</a></h2>
<p>Later on, if you wish to make further contributions, you must make sure to be
working with the very latest version of the code base. You can add another
<em>remote</em> reference in your local repository pointing to the main PyWPS
repository:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">remote</span> <span class="n">add</span> <span class="n">upstream</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">geopython</span><span class="o">/</span><span class="n">PyWPS</span>
</pre></div>
</div>
<p>Then you can use the <em>fetch</em> command to update your local repository metadata:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">fetch</span> <span class="n">upstream</span>
</pre></div>
</div>
<p>Finally you use a <em>pull</em> command to merge the latest <em>commits</em> into your local
repository:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">pull</span> <span class="n">upstream</span> <span class="n">master</span>
</pre></div>
</div>
</div>
<div class="section" id="help-and-discussion">
<h2>5. Help and discussion<a class="headerlink" href="#help-and-discussion" title="Permalink to this headline">¶</a></h2>
<p>If you have any doubts or questions about this contribution process or about
the code please use the <a class="reference external" href="http://lists.osgeo.org/mailman/listinfo/pywps-dev">PyWPS mailing list</a> or the <a class="reference external" href="https://gitter.im/PyWPS">PyWPS Gitter</a> . This is also the right place to propose and
discuss the changes you intend to introduce.</p>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<p class="logo">
<a href="index.html">
<img class="logo" src="_static/pywps.png" alt="Logo"/>
</a>
</p>
<h3>Navigation</h3>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="wps.html">OGC Web Processing Service (OGC WPS)</a></li>
<li class="toctree-l1"><a class="reference internal" href="pywps.html">PyWPS</a></li>
<li class="toctree-l1"><a class="reference internal" href="install.html">Installation</a></li>
<li class="toctree-l1"><a class="reference internal" href="configuration.html">Configuration</a></li>
<li class="toctree-l1"><a class="reference internal" href="process.html">Processes</a></li>
<li class="toctree-l1"><a class="reference internal" href="deployment.html">Deployment to a production server</a></li>
<li class="toctree-l1"><a class="reference internal" href="migration.html">Migrating from PyWPS 3.x to 4.x</a></li>
<li class="toctree-l1"><a class="reference internal" href="external-tools.html">PyWPS and external tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="api.html">PyWPS API Doc</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Developers Guide</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#github-account">0. GitHub account</a></li>
<li class="toctree-l2"><a class="reference internal" href="#open-a-new-issue">1. Open a new issue</a></li>
<li class="toctree-l2"><a class="reference internal" href="#fork-and-clone-the-pywps-repository">2. Fork and clone the PyWPS repository</a></li>
<li class="toctree-l2"><a class="reference internal" href="#commit-and-pull-request">3. Commit and pull request</a></li>
<li class="toctree-l2"><a class="reference internal" href="#updating-local-repository">4. Updating local repository</a></li>
<li class="toctree-l2"><a class="reference internal" href="#help-and-discussion">5. Help and discussion</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="exceptions.html">Exceptions</a></li>
</ul>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<div><input type="text" name="q" /></div>
<div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
©Copyright (C) 2014-2016 PyWPS Development Team, represented by Jachym Cepicky.This work is licensed under a Creative Commons Attribution 4.0 International License.
|
Powered by <a href="http://sphinx-doc.org/">Sphinx 1.6.7</a>
& <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a>
|
<a href="_sources/development.rst.txt"
rel="nofollow">Page source</a>
</div>
</body>
</html>
|