summaryrefslogtreecommitdiff
path: root/doc/development.rst
blob: 050abb2ae01a613d9cc518c77d76b5f5164d91fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
***********
Development
***********

.. highlight:: sh

Getting the source
------------------

The HappyBase source code repository is hosted on GitHub:

   https://github.com/wbolster/happybase

To grab a copy, use this::

   $ git clone https://github.com/wbolster/happybase.git



Setting up a development environment
------------------------------------

Setting up a development environment from a Git branch is easy::

   $ cd /path/to/happybase/
   $ mkvirtualenv happybase
   (happybase)$ pip install -r requirements-development.txt
   (happybase)$ pip install -e .


Running the tests
-----------------

The tests use the `nose` test suite. To execute the tests, run::

   (happybase)$ make test

Test outputs are shown on the console. A test code coverage report is saved in
`coverage/index.html`.

If the Thrift server is not running on localhost, you can specify these
environment variables (both are optional) before running the tests::

   (happybase)$ export HAPPYBASE_HOST=host.example.org
   (happybase)$ export HAPPYBASE_PORT=9091

To test the HBase 0.90 compatibility mode, use this::

   (happybase)$ export HAPPYBASE_COMPAT=0.90

To test the framed Thrift transport mode, use this::

   (happybase)$ export HAPPYBASE_TRANSPORT=framed

Contributing
------------

Feel free to report any issues on GitHub. Patches and merge requests are also
most welcome.

.. vim: set spell spelllang=en: