This website requires JavaScript.
36e1510e4ad4a83bb062cdd82dc91d4ea15d1c5e
nova /HACKING
74 lines
2.1 KiB
Plaintext
2010年05月27日 23:05:26 -07:00
Nova Style Commandments
Step 1: Read http://www.python.org/dev/peps/pep-0008/
Step 2: Read http://www.python.org/dev/peps/pep-0008/ again
- thou shalt not import objects, only modules
- thou shalt not import more than one module per line
- thou shalt not make relative imports
- thou shalt organize your imports according to the following template
# vim: tabstop=4 shiftwidth=4 softtabstop=4
{{stdlib imports in human alphabetical order}}
{{nova imports in human alphabetical order}}
- thou shalt put two newlines twixt toplevel code (funcs, classes, etc)
- thou shalt put one newline twixt methods in classes and anywhere else
- thou shalt not write "except:", use "except Exception:" at the very least
- thou shalt include your name with TODOs as in "TODO(termie)"
- thou shalt not name anything the same name as a builtin or reserved word
- thou shalt not violate causality in our time cone, or else
Human Alphabetical Order Examples
---------------------------------
from nova.auth import users
from nova.endpoint import api
from nova.endpoint import cloud
2011年02月02日 13:13:10 -08:00
2011年03月28日 10:46:02 -07:00
"""A one line docstring looks like this and ends in a period."""
2011年02月02日 13:13:10 -08:00
2011年03月28日 10:46:02 -07:00
"""A multiline docstring has a one-line summary, less than 80 characters.
Then a new paragraph after a newline that explains in more detail any
general information about the function, class or method. Example usages
are also great to have here if it is a complex class for function.
2011年02月02日 13:13:10 -08:00
2011年02月12日 13:30:31 -08:00
When writing the docstring for a class, an extra line should be placed
after the closing quotations. For more in-depth explanations for these
decisions see http://www.python.org/dev/peps/pep-0257/
2011年03月28日 10:46:02 -07:00
If you are going to describe parameters and return values, use Sphinx, the
appropriate syntax is as follows.
2011年02月02日 13:13:10 -08:00
:param foo: the foo parameter
:param bar: the bar parameter
2011年02月12日 13:30:31 -08:00
:returns: description of the return value
2011年02月02日 13:13:10 -08:00