Chris McDonough
2013-06-20 56511b0defbc4437a1e1d3b013c504886270d01b
HACKING.txt
@@ -27,26 +27,28 @@
- Install ``setuptools-git`` into the virtualenv (for good measure, as we're
  using git to do version control)::
  $ env/bin/easy_install setuptools-git
  $ $VENV/bin/easy_install setuptools-git
- Install Pyramid from the checkout into the virtualenv using ``setup.py
  develop`` (running ``setup.py develop`` *must* be done while the current
  working directory is the ``pyramid`` checkout directory)::
  dev``.  ``setup.py dev`` is an alias for "setup.py develop" which also
  installs testing requirements such as nose and coverage.  Running
  ``setup.py dev`` *must* be done while the current working directory is the
  ``pyramid`` checkout directory::
  $ cd pyramid
  $ ../env/bin/python setup.py develop
  $ $VENV/bin/python setup.py dev
- At that point, you should be able to create new Pyramid projects by using
  ``pcreate``::
  $ cd ../env
  $ bin/pcreate -s starter starter
  $ $VENV/bin/pcreate -s starter starter
- And install those projects (also using ``setup.py develop``) into the
  virtualenv::
  $ cd starter
  $ ../bin/python setup.py develop
  $ $VENV/bin/python setup.py develop
Adding Features
---------------
@@ -85,11 +87,14 @@
  2 newlines between classes.  But 80-column lines, in particular, are
  mandatory.
- Please do not remove trailing whitespace.  Configure your editor to reduce
  diff noise. See https://github.com/Pylons/pyramid/issues/788 for more.
Running Tests
--------------
- To run tests for Pyramid on a single Python version, run ``python setup.py
  test`` against the using the Python interpreter from virtualenv into which
  test`` against the Python interpreter from virtualenv into which
  you've ``setup.py develop``-ed Pyramid.
- To run the full set of Pyramid tests on all platforms, install ``tox``
@@ -110,8 +115,8 @@
- The codebase *must* have 100% test statement coverage after each commit.
  You can test coverage via ``tox -e coverage``, or alternately by installing
  ``nose`` and ``coverage`` into your virtualenv, and running ``setup.py
  nosetests --with-coverage``.
  ``nose`` and ``coverage`` into your virtualenv (easiest via ``setup.py
  dev``) , and running ``setup.py nosetests --with-coverage``.
Documentation Coverage and Building HTML Documentation
------------------------------------------------------
@@ -124,16 +129,22 @@
To build and review docs (where ``$yourvenv`` refers to the virtualenv you're
using to develop Pyramid):
1. Run ``$yourvenv/bin/python setup.py dev docs``.  This will cause Sphinx
1. Run ``$VENV/bin/python setup.py dev docs``.  This will cause Sphinx
   and all development requirements to be installed in your virtualenv.
2. cd to the ``docs`` directory within your Pyramid checkout and execute
   ``make clean html SPHINXBUILD=$yourvenv/bin/sphinx-build``.  The
2. Update all git submodules from the top-level of your Pyramid checkout, like
   so:
     git submodule update --init --recursive
   This will checkout theme subrepositories and prevent error conditions when
   HTML docs are generated.
3. cd to the ``docs`` directory within your Pyramid checkout and execute
   ``make clean html SPHINXBUILD=$VENV/bin/sphinx-build``.  The
   ``SPHINXBUILD=...`` hair is there in order to tell it to use the
   virtualenv Python, which will have both Sphinx and Pyramid (for API
   documentation generation) installed.
3. Open the ``docs/_build/html/index.html`` file to see the resulting HTML
4. Open the ``docs/_build/html/index.html`` file to see the resulting HTML
   rendering.
Change Log