Python bindings for RocksDB
Find a file
Mehdi Abaakouk e4c0de9455 Allow to compile the extension everywhere
This change:
* uses to setuptools Cython automatic extension build system.
* Add tox.ini to run tests and build docs into virtualenv
* Add .travis.yaml and Dockerfile to run tests in CI
* Change requirements to ensure:
  - Cython and setuptools are installed before we build the Cython
    extension
  - tests dependencies are not installed by default
  - doc dependencies are explicit
* Add missing lz4 library
* Allow to build the module with any librocksdb headers (no-rtti)

Closes #15
2018-02-09 09:21:56 +01:00
docs Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
rocksdb Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
.gitignore Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
.travis.yml Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
Dockerfile Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
LICENSE.md Create LICENSE.md 2014-02-02 17:39:01 +01:00
MANIFEST.in Add the .hpp .pxd .pyx files for the sdist. 2015-08-16 12:18:28 +02:00
README.rst add missing part in the installation guide 2017-07-17 14:51:56 +08:00
setup.cfg Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
setup.py Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00
tox.ini Allow to compile the extension everywhere 2018-02-09 09:21:56 +01:00

Note
=========
The original pyrocksdb (https://pypi.python.org/pypi/pyrocksdb/0.4) has not been updated for long time. I update pyrocksdb to support the latest rocksdb. Please open issues in github if you have any problem.


pyrocksdb
=========

Python bindings for RocksDB.
See http://python-rocksdb.readthedocs.io/en/latest/ for a more comprehensive install and usage description.


Quick Install
-------------

Quick install for debian/ubuntu like linux distributions.

.. code-block:: bash

    $ apt-get install build-essential libsnappy-dev zlib1g-dev libbz2-dev libgflags-dev
    $ git clone https://github.com/facebook/rocksdb.git
    $ cd rocksdb
    $ mkdir build && cd build
    $ cmake ..
    $ make
    $ export CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}:`pwd`/../include
    $ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:`pwd`
    $ export LIBRARY_PATH=${LIBRARY_PATH}:`pwd`

    $ cd ../
    $ apt-get install python-virtualenv python-dev
    $ virtualenv pyrocks_test
    $ cd pyrocks_test
    $ . bin/active
    $ pip install python-rocksdb


Quick Usage Guide
-----------------

.. code-block:: pycon

    >>> import rocksdb
    >>> db = rocksdb.DB("test.db", rocksdb.Options(create_if_missing=True))
    >>> db.put(b'a', b'data')
    >>> print db.get(b'a')
    b'data'