exxeleron / qPython

interprocess communication between Python and kdb+
http://www.devnet.de
Apache License 2.0
151 stars 90 forks source link

.. ATTENTION:: This project is in maintenance mode. We may fix bugs, but no new features will be added in foreseeable future.

qPython

qPython is a Python library providing support for interprocess communication between Python and kdb+ processes, it offers:

For more details please refer to the documentation_.

Installation

To install qPython from PyPI:

$ pip install qpython

Please do not use old PyPI package name: exxeleron-qpython.

Building package

Documentation


qPython documentation is generated with help of `Sphinx`_ document generator.
In order to build the documentation, including the API docs, execute:
``make html`` from the doc directory.

Documentation is built into the: ``doc/build/html/`` directory.

Compile Cython extensions

qPython utilizes Cython_ to tune performance critical parts of the code.

Instructions:

Build binary distribution


Instructions:

- Execute: ``python setup.py bdist``

Testing

qPython uses py.test as a test runner for unit tests.

Instructions:

Requirements



qPython requires numpy 1.8 to run.

Optional requirements have to be met to provide additional features:

- tune performance of critical parts of the code:

  - Cython 0.20.1

- support serialization/deserialization of ``pandas.Series`` and ``pandas.DataFrame``

  - pandas 0.14.0

- run Twisted sample:

  - Twisted 13.2.0

- build documentation via Sphinx:

  - Sphinx 1.2.3
  - mock 1.0.1

Required libraries can be installed using `pip`_.

To install all the required dependencies, execute:
``pip install -r requirements.txt``

Minimal set of required dependencies can be installed by executing:
``pip install -r requirements-minimal.txt``

.. _Cython: http://cython.org/
.. _Sphinx: http://sphinx-doc.org/
.. _pip: http://pypi.python.org/pypi/pip
.. _documentation: http://qpython.readthedocs.org/en/latest/