Skip to content

Commit

Permalink
Update hacking docs to point to Github.
Browse files Browse the repository at this point in the history
[ci skip]
  • Loading branch information
tseaver committed Jan 18, 2015
1 parent c337490 commit 4556068
Showing 1 changed file with 51 additions and 42 deletions.
93 changes: 51 additions & 42 deletions docs/hacking.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,24 @@ Hacking on :mod:`zope.schema`


Getting the Code
-----------------
################

The main repository for :mod:`zope.schema` is in the Zope Foundation
Github repository:

https://github.com/zopefoundation/zope.schema

The main repository for :mod:`zope.schema` is in the Zope Subversion
repository:
You can get a read-only checkout from there:

http://svn.zope.org/zope.schema
.. code-block:: sh
$ git clone https://github.com/zopefoundation/zope.schema.git
You can get a read-only Subversion checkout from there:
or fork it and get a writeable checkout of your fork:

.. code-block:: sh
$ svn checkout svn://svn.zope.org/repos/main/zope.schema/trunk zope.schema
$ git clone git@github.com/jrandom/zope.schema.git
The project also mirrors the trunk from the Subversion repository as a
Bazaar branch on Launchpad:
Expand All @@ -28,8 +34,11 @@ You can branch the trunk from there using Bazaar:
$ bzr branch lp:zope.schema
Running the tests in a ``virtualenv``
-------------------------------------
Working in a ``virtualenv``
###########################

Installing
----------

If you use the ``virtualenv`` package to create lightweight Python
development environments, you can run the tests using nothing more
Expand All @@ -47,7 +56,10 @@ environment:
$ /tmp/hack-zope.schema/bin/python setup.py develop
Finally, run the tests using the build-in ``setuptools`` testrunner:
Running the tests
-----------------

Run the tests using the build-in ``setuptools`` testrunner:

.. code-block:: sh
Expand Down Expand Up @@ -117,8 +129,8 @@ you can see how well the tests cover the code:
OK
Building the documentation in a ``virtualenv``
----------------------------------------------
Building the documentation
--------------------------

:mod:`zope.schema` uses the nifty :mod:`Sphinx` documentation system
for building its docs. Using the same virtualenv you set up to run the
Expand Down Expand Up @@ -149,8 +161,11 @@ You can also test the code snippets in the documentation:
results in _build/doctest/output.txt.
Running the tests using :mod:`zc.buildout`
-------------------------------------------
Using :mod:`zc.buildout`
########################

Setting up the buildout
-----------------------

:mod:`zope.schema` ships with its own :file:`buildout.cfg` file and
:file:`bootstrap.py` for setting up a development buildout:
Expand All @@ -166,7 +181,10 @@ Running the tests using :mod:`zc.buildout`
Generated script '.../bin/sphinx-quickstart'.
Generated script '.../bin/sphinx-build'.
You can now run the tests:
Running the tests
-----------------

Run the tests:

.. code-block:: sh
Expand All @@ -178,8 +196,8 @@ You can now run the tests:
Tear down zope.testing.testrunner.layer.UnitTests in 0.000 seconds.
Building the documentation using :mod:`zc.buildout`
---------------------------------------------------
Building the documentation
--------------------------

The :mod:`zope.schema` buildout installs the Sphinx scripts required to build
the documentation, including testing its code snippets:
Expand All @@ -201,8 +219,11 @@ the documentation, including testing its code snippets:
build succeeded.
Running Tests on Multiple Python Versions via :mod:`tox`
--------------------------------------------------------
Using :mod:`tox`
################

Running Tests on Multiple Python Versions
-----------------------------------------

`tox <http://tox.testrun.org/latest/>`_ is a Python-based test automation
tool designed to run tests against multiple Python versions. It creates
Expand All @@ -213,22 +234,11 @@ configured commands.
:mod:`zope.schema` configures the following :mod:`tox` environments via
its ``tox.ini`` file:

- The ``py26`` environment builds a ``virtualenv`` with ``python2.6``,
installs :mod:`zope.schema`, and runs the tests
via ``python setup.py test -q``.

- The ``py27`` environment builds a ``virtualenv`` with ``python2.7``,
installs :mod:`zope.schema`, and runs the tests
via ``python setup.py test -q``.

- The ``py32`` environment builds a ``virtualenv`` with ``python3.2``,
- The ``py26``, ``py27``, ``py33``, ``py34``, and ``pypy`` environments
builds a ``virtualenv`` with ``pypy``,
installs :mod:`zope.schema` and dependencies, and runs the tests
via ``python setup.py test -q``.

- The ``pypy`` environment builds a ``virtualenv`` with ``pypy``,
installs :mod:`zope.schema`, and runs the tests
via ``python setup.py test -q``.

- The ``coverage`` environment builds a ``virtualenv`` with ``python2.6``,
installs :mod:`zope.schema`, installs
:mod:`nose` and :mod:`coverage`, and runs ``nosetests`` with statement
Expand Down Expand Up @@ -283,12 +293,15 @@ including building the docs and testing their snippets:
congratulations :)
Contributing to :mod:`zope.schema`
##################################

Submitting a Bug Report
-----------------------

:mod:`zope.schema` tracks its bugs on Launchpad:
:mod:`zope.schema` tracks its bugs on Github:

https://bugs.launchpad.net/zope.schema
https://github.com/zopefoundation/zope.schema/issues

Please submit bug reports and feature requests there.

Expand All @@ -303,16 +316,12 @@ Sharing Your Changes
or bug fixes, although it is possible that you may have tested your
new code by updating existing tests.

If you got a read-only checkout from the Subversion repository, and you
have made a change you would like to share, the best route is to let
Subversion help you make a patch file:

.. code-block:: sh
$ svn diff > zope.schema-cool_feature.patch
If have made a change you would like to share, the best route is to fork
the Githb repository, check out your fork, make your changes on a branch
in your fork, and push it. You can then submit a pull request from your
branch:

You can then upload that patch file as an attachment to a Launchpad bug
report.
https://github.com/zopefoundation/zope.schema/pulls

If you branched the code from Launchpad using Bazaar, you have another
option: you can "push" your branch to Launchpad:
Expand Down

0 comments on commit 4556068

Please sign in to comment.