Development

This package is developed using continuous integration which can be found here:

https://travis-ci.org/Mortar/mortar_rdb

The latest development version of the documentation can be found here:

http://mortar_rdb.readthedocs.org/en/latest/

If you wish to contribute to this project, then you should fork the repository found here:

https://github.com/Mortar/mortar_rdb

Once that has been done and you have a checkout, you can follow these instructions to perform various development tasks:

Setting up a virtualenv

The recommended way to set up a development environment is to turn your checkout into a virtualenv and then install the package in editable form as follows:

$ virtualenv .
$ bin/pip install -U -e .[test,build]

Running the tests

Once you’ve set up a virtualenv, the tests can be run as follows:

$ bin/nosetests

Some of the tests can be run against a specific database to check compatibility with specific database back ends. To do this, set the DB_URL environment variable to the SQLAlchemy url of the database you’d like to use. For example, if you are testing in a unix-like environment and want to test against a MySQL database, you could do:

$ DB_URL=mysql://scott:tiger@localhost/mortar_rdb_tests bin/test

Building the documentation

The Sphinx documentation is built by doing the following from the directory containing setup.py:

$ source bin/activate
$ cd docs
$ make html

To check that the description that will be used on PyPI renders properly, do the following:

$ python setup.py --long-description | rst2html.py > desc.html

The resulting desc.html should be checked by opening in a browser.

Making a release

To make a release, just update the version in setup.py, update the change log, tag it and push to https://github.com/Mortar/mortar_rdb and Travis CI should take care of the rest.

Once Travis CI is done, make sure to go to https://readthedocs.org/projects/mortar_rdb/versions/ and make sure the new release is marked as an Active Version.