summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Waltman <jonathan.waltman@gmail.com>2012-12-03 00:55:47 -0600
committerJon Waltman <jonathan.waltman@gmail.com>2012-12-03 00:55:47 -0600
commitb7947597b5154f1629f2113b93e54044b6b5a825 (patch)
treeb42102feac8af4dfb0d7695acf2315975e76b4c2
parentfa393fd68a0696a8b19fe634871efab3bfa1b010 (diff)
downloadsphinx-b7947597b5154f1629f2113b93e54044b6b5a825.tar.gz
devguide: Add guidelines for core developers
-rw-r--r--doc/devguide.rst44
1 files changed, 32 insertions, 12 deletions
diff --git a/doc/devguide.rst b/doc/devguide.rst
index e175a6f4..ab4bc740 100644
--- a/doc/devguide.rst
+++ b/doc/devguide.rst
@@ -54,11 +54,8 @@ Contributing to Sphinx
The recommended way for new contributors to submit code to Sphinx is to fork
the Mercurial repository on BitBucket and then submit a pull request after
-committing the changes.
-
-Developers with write access to the main repository are also encouraged to
-create pull requests for non-trivial changes so they may be reviewed before
-being committed.
+committing the changes. The pull request will then need to be approved by one
+of the core developers before it is merged into the main repository.
Getting Started
@@ -66,11 +63,6 @@ Getting Started
These are the basic steps needed to start developing on Sphinx.
-.. todo::
-
- Recommend using named branches?
-
-
#. Create an account on BitBucket.
#. Fork the main Sphinx repository (`birkenfeld/sphinx
@@ -146,8 +138,34 @@ These are the basic steps needed to start developing on Sphinx.
#. Submit a pull request from your repository to ``birkenfeld/sphinx`` using
the BitBucket interface.
- The pull request will be reviewed and if approved, merged by one of the
- Sphinx developers.
+#. Wait for a core developer to review your changes.
+
+
+Core Developers
+~~~~~~~~~~~~~~~
+
+The core developers of Sphinx have write access to the main repository. They
+can commit changes, accept/reject pull requests, and manage items on the issue
+tracker.
+
+You do not need to be a core developer or have write access to be involved in
+the development of Sphinx. You can submit patches or create pull requests
+from forked repositories and have a core developer add the changes for you.
+
+The following are some general guidelines for core developers:
+
+* Questionable or extensive changes should be submitted as a pull request
+ instead of being committed directly to the main repository. The pull
+ request should be reviewed by another core developer before it is merged.
+
+* Trivial changes can be committed directly but be sure to keep the repository
+ in a good working state and that all tests pass before pushing your changes.
+
+* When committing code written by someone else, please attribute the original
+ author in the commit message and any relevant :file:`CHANGES` entry.
+
+* Using Mercurial named branches other than ``default`` and ``stable`` is not
+ encouraged.
Coding Guide
@@ -171,6 +189,8 @@ Coding Guide
* Use the included :program:`utils/check_sources.py` script to check for
common formatting issues (trailing whitespace, lengthy lines, etc).
+* Add appropriate unit tests.
+
Debugging Tips
~~~~~~~~~~~~~~