Move documentation files for packaging preparation
[mudpy.git] / doc / source / coder.rst
1 =============
2  coder guide
3 =============
4
5 :Copyright: (c) 2004-2014 Jeremy Stanley <fungi@yuggoth.org>. Permission
6             to use, copy, modify, and distribute this software is
7             granted under terms provided in the LICENSE file distributed
8             with this software.
9
10 This guide attempts to embody a rudimentary set of rules for developer
11 submissions of source code and documentation targeted for inclusion
12 within the mudpy project, as well as pointers to useful resources for
13 those attempting to obtain a greater understanding of the software.
14
15 .. sectnum:: :prefix: 1.
16 .. contents:: :local:
17
18 --------
19  source
20 --------
21
22 As with any project, the mudpy source code could always be better
23 documented, and contributions to that end are heartily welcomed. 
24
25 version control system
26 ----------------------
27
28 Git_ is used for version control on the project, and the archive can be
29 cloned anonymously from http://mudpy.org/git/mudpy if desired. For now,
30 detailed commits can be E-mailed to fungi@yuggoth.org, but there will
31 most likely be a developer mailing list for more open presentation and
32 discussion of patches soon.
33
34 A Gitweb_ interface is available, to make the change history easier to
35 browse. This is found at http://mudpy.org/gitweb/mudpy/ and should be
36 fairly self-explanatory.
37
38 A GNU-format_ ChangeLog file is generated automatically from repository
39 commit logs, available at http://mudpy.org/res/src/mudpy/doc/ChangeLog
40 and is included in the doc directory of all tarball/zip files. The
41 export script, git2gch, is included in the bin directory.
42
43 .. _Git: http://git-scm.com/
44 .. _Gitweb: http://git.wiki.kernel.org/index.php/Gitweb
45 .. _GNU-format: http://www.gnu.org/prep/standards/html_node
46                 /Style-of-Change-Logs.html#Style-of-Change-Logs
47
48 application program interface
49 -----------------------------
50
51 API documentation is maintained within docstrings in the mudpy source
52 code.
53
54 regression testing
55 ------------------
56
57 All new commits are tested using a regression testing script in the bin
58 directory of the source archive, to help ensure the software is
59 continually usable. Any new features should be accompanied by suitable
60 regression tests so that their functionality can be maintained properly
61 through future releases.
62
63 -------
64  style
65 -------
66
67 This project follows Guido van Rossum and Barry Warsaw's `Style Guide`_
68 for Python Code (a.k.a. "PEP-8"). When in need of sample code or other
69 examples, any common source code file or text document file distributed
70 as part of mudpy should serve as a suitable reference. Testing of all
71 new patches with the flake8_ and pylint_ utilities is also highly
72 recommended.
73
74 .. _Style Guide: http://www.python.org/dev/peps/pep-0008/
75 .. _flake8: https://pypi.python.org/pypi/flake8
76 .. _pylint: https://pypi.python.org/pypi/pylint