/usr/share/doc/mopidy-doc/html/contributing.html is in mopidy-doc 2.0.0-2.
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 220 221 | <!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>Contributing — Mopidy 2.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: '2.0.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</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>
<link rel="top" title="Mopidy 2.0.0 documentation" href="index.html" />
<link rel="next" title="Development environment" href="devenv.html" />
<link rel="prev" title="Versioning" href="versioning.html" />
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
</head>
<body role="document">
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="contributing">
<span id="id1"></span><h1>Contributing<a class="headerlink" href="#contributing" title="Permalink to this headline">¶</a></h1>
<p>If you want to contribute to Mopidy, here are some tips to get you started.</p>
<div class="section" id="asking-questions">
<span id="id2"></span><h2>Asking questions<a class="headerlink" href="#asking-questions" title="Permalink to this headline">¶</a></h2>
<p>Please get in touch with us in one of these ways when requesting help with
Mopidy and its extensions:</p>
<ul class="simple">
<li>Our discussion forum: <a class="reference external" href="https://discuss.mopidy.com">discuss.mopidy.com</a>.
Just sign in and fire away.</li>
<li>Our IRC channel: <a class="reference external" href="https://webchat.freenode.net/?channels=#mopidy">#mopidy</a>
on <a class="reference external" href="http://freenode.net">irc.freenode.net</a>,
with public <a class="reference external" href="https://botbot.me/freenode/mopidy/">searchable logs</a>. Be
prepared to hang around for a while, as we’re not always around to answer
straight away.</li>
</ul>
<p>Before asking for help, it might be worth your time to read the
<a class="reference internal" href="troubleshooting.html#troubleshooting"><span>Troubleshooting</span></a> page, both so you might find a solution to your problem
but also to be able to provide useful details when asking for help.</p>
</div>
<div class="section" id="helping-users">
<h2>Helping users<a class="headerlink" href="#helping-users" title="Permalink to this headline">¶</a></h2>
<p>If you want to contribute to Mopidy, a great place to start is by helping other
users on IRC and in the discussion forum. This is a contribution we value
highly. As more people help with user support, new users get faster and better
help. For your own benefit, you’ll quickly learn what users find confusing,
difficult or lacking, giving you some ideas for where you may contribute
improvements, either to code or documentation. Lastly, this may also free up
time for other contributors to spend more time on fixing bugs or implementing
new features.</p>
</div>
<div class="section" id="issue-guidelines">
<span id="id3"></span><h2>Issue guidelines<a class="headerlink" href="#issue-guidelines" title="Permalink to this headline">¶</a></h2>
<ol class="arabic simple">
<li>If you need help, see <a class="reference internal" href="#asking-questions"><span>Asking questions</span></a> above. The GitHub issue
tracker is not a support forum.</li>
<li>If you are not sure if what you’re experiencing is a bug or not, post in the
<a class="reference external" href="https://discuss.mopidy.com">discussion forum</a> first to verify that it’s
a bug.</li>
<li>If you are sure that you’ve found a bug or have a feature request, check if
there’s already an issue in the <a class="reference external" href="https://github.com/mopidy/mopidy/issues">issue tracker</a>. If there is, see if there is
anything you can add to help reproduce or fix the issue.</li>
<li>If there is no exising issue matching your bug or feature request, create a
<a class="reference external" href="https://github.com/mopidy/mopidy/issues/new">new issue</a>. Please include
as much relevant information as possible. If it’s a bug, including how to
reproduce the bug and any relevant logs or error messages.</li>
</ol>
</div>
<div class="section" id="pull-request-guidelines">
<h2>Pull request guidelines<a class="headerlink" href="#pull-request-guidelines" title="Permalink to this headline">¶</a></h2>
<ol class="arabic">
<li><p class="first">Before spending any time on making a pull request:</p>
<ul class="simple">
<li>If it’s a bug, <a class="reference internal" href="#issue-guidelines"><span>file an issue</span></a>.</li>
<li>If it’s an enhancement, discuss it with other Mopidy developers first,
either in a GitHub issue, on the discussion forum, or on IRC. Making sure
your ideas and solutions are aligned with other contributors greatly
increases the odds of your pull request being quickly accepted.</li>
</ul>
</li>
<li><p class="first">Create a new branch, based on the <code class="docutils literal"><span class="pre">develop</span></code> branch, for every feature or
bug fix. Keep branches small and on topic, as that makes them far easier to
review. We often use the following naming convention for branches:</p>
<ul class="simple">
<li>Features get the prefix <code class="docutils literal"><span class="pre">feature/</span></code>, e.g.
<code class="docutils literal"><span class="pre">feature/track-last-modified-as-ms</span></code>.</li>
<li>Bug fixes get the prefix <code class="docutils literal"><span class="pre">fix/</span></code>, e.g. <code class="docutils literal"><span class="pre">fix/902-consume-track-on-next</span></code>.</li>
<li>Improvements to the documentation get the prefix <code class="docutils literal"><span class="pre">docs/</span></code>, e.g.
<code class="docutils literal"><span class="pre">docs/add-ext-mopidy-spotify-tunigo</span></code>.</li>
</ul>
</li>
<li><p class="first">Follow the <a class="reference internal" href="codestyle.html#codestyle"><span>code style</span></a>, especially make sure the
<code class="docutils literal"><span class="pre">flake8</span></code> linter does not complain about anything. Travis CI will check
that your pull request is “flake8 clean”. See <a class="reference internal" href="devenv.html#code-linting"><span>Style checking and linting</span></a>.</p>
</li>
<li><p class="first">Include tests for any new feature or substantial bug fix. See
<a class="reference internal" href="devenv.html#running-tests"><span>Running tests</span></a>.</p>
</li>
<li><p class="first">Include documentation for any new feature. See <a class="reference internal" href="devenv.html#writing-docs"><span>Writing documentation</span></a>.</p>
</li>
<li><p class="first">Feel free to include a changelog entry in your pull request. The changelog
is in <code class="file docutils literal"><span class="pre">docs/changelog.rst</span></code>.</p>
</li>
<li><p class="first">Write good commit messages.</p>
<ul class="simple">
<li>Follow the template “topic: description” for the first line of the commit
message, e.g. “mpd: Switch list command to using list_distinct”. See the
commit history for inspiration.</li>
<li>Use the rest of the commit message to explain anything you feel isn’t
obvious. It’s better to have the details here than in the pull request
description, since the commit message will live forever.</li>
<li>Write in the imperative, present tense: “add” not “added”.</li>
</ul>
<p>For more inspiration, feel free to read these blog posts:</p>
<ul class="simple">
<li><a class="reference external" href="http://365git.tumblr.com/post/3308646748/writing-git-commit-messages">Writing Git commit messages</a></li>
<li><a class="reference external" href="http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html">A Note About Git Commit Messages</a></li>
<li><a class="reference external" href="http://who-t.blogspot.ch/2009/12/on-commit-messages.html">On commit messages</a></li>
</ul>
</li>
<li><p class="first">Send a pull request to the <code class="docutils literal"><span class="pre">develop</span></code> branch. See the <a class="reference external" href="https://help.github.com/articles/using-pull-requests">GitHub pull request
docs</a> for help.</p>
</li>
</ol>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">If you are contributing a bug fix for a specific minor version of Mopidy
you should create the branch based on <code class="docutils literal"><span class="pre">release-x.y</span></code> instead of
<code class="docutils literal"><span class="pre">develop</span></code>. When the release is done the changes will be merged back into
<code class="docutils literal"><span class="pre">develop</span></code> automatically as part of the normal release process. See
<a class="reference internal" href="releasing.html#creating-releases"><span>Creating releases</span></a>.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3><a href="index.html">Table Of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">Contributing</a><ul>
<li><a class="reference internal" href="#asking-questions">Asking questions</a></li>
<li><a class="reference internal" href="#helping-users">Helping users</a></li>
<li><a class="reference internal" href="#issue-guidelines">Issue guidelines</a></li>
<li><a class="reference internal" href="#pull-request-guidelines">Pull request guidelines</a></li>
</ul>
</li>
</ul>
<div class="relations">
<h3>Related Topics</h3>
<ul>
<li><a href="index.html">Documentation overview</a><ul>
<li>Previous: <a href="versioning.html" title="previous chapter">Versioning</a></li>
<li>Next: <a href="devenv.html" title="next chapter">Development environment</a></li>
</ul></li>
</ul>
</div>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="_sources/contributing.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
<p class="searchtip" style="font-size: 90%">
Enter search terms or a module, class or function name.
</p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
©2009-2016, Stein Magnus Jodal and contributors.
|
Powered by <a href="http://sphinx-doc.org/">Sphinx 1.3.6</a>
& <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a>
|
<a href="_sources/contributing.txt"
rel="nofollow">Page source</a>
</div>
</body>
</html>
|