12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- .. include:: global.rst.inc
- .. _development:
- Development
- ===========
- This chapter will get you started with |project_name|' development.
- |project_name| is written in Python (with a little bit of Cython and C for
- the performance critical parts).
- Building a development environment
- ----------------------------------
- First, just install borg into a virtual env as described before.
- To install some additional packages needed for running the tests, activate your
- virtual env and run::
- pip install -r requirements.d/development.txt
- Running the tests
- -----------------
- The tests are in the borg/testsuite package.
- To run them, you need to have fakeroot, tox and pytest installed.
- To run the test suite use the following command::
- fakeroot -u tox # run all tests
- Some more advanced examples::
- # verify a changed tox.ini (run this after any change to tox.ini):
- fakeroot -u tox --recreate
- fakeroot -u tox -e py32 # run all tests, but only on python 3.2
- fakeroot -u tox borg.testsuite.locking # only run 1 test module
- fakeroot -u tox borg.testsuite.locking -- -k '"not Timer"' # exclude some tests
- fakeroot -u tox borg.testsuite -- -v # verbose py.test
- Important notes:
- - Without fakeroot -u some tests will fail.
- - When using -- to give options to py.test, you MUST also give borg.testsuite[.module].
- Building the docs with Sphinx
- -----------------------------
- The documentation (in reStructuredText format, .rst) is in docs/.
- To build the html version of it, you need to have sphinx installed::
- pip3 install sphinx
- Now run::
- cd docs/
- make html
- Then point a web browser at docs/_build/html/index.html.
|