qPython
=======
qPython is a Python library providing support for interprocess communication between Python and kdb+ processes, it offers:
- Synchronous and asynchronous queries
- Convenient asynchronous callbacks mechanism
- Support for kdb+ protocol and types as of kdb+ v4.0
- Uncompression of the IPC data stream
- Internal representation of data via numpy arrays (lists, complex types) and numpy data types (atoms)
- Supported on Python 3.4/3.5/3.6 and numpy 1.8+
For more details please refer to the `documentation`_.
Installation
------------
To install qPython from PyPI:
``$ pip install qpython3``
**Please do not use old PyPI package name: qpython or exxeleron-qpython.**
To install qPython from internal PyPI:
``$ pip install --trusted-host pypi.dts.corp.local --extra-index-url https://pypi.dts.corp.local/root/citizen/+simple/ qpython
Building package
----------------
``$ python setup.py sdist bdist_wheel
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:
- Execute: ``python setup.py build_ext --inplace``
Build binary distribution
~~~~~~~~~~~~~~~~~~~~~~~~~
Instructions:
- Execute: ``python setup.py bdist``
Testing
~~~~~~~
qPython uses py.test as a test runner for unit tests.
Instructions:
- Make sure that top directory is included in the ``PYTHONPATH``
- Execute: ``py.test``
CVE Scanning
~~~~~~~~~~~~
Configured GitHub Action as per the "Python" section of:
- https://github.com/maoo/security-scanning
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/
Raw data
{
"_id": null,
"home_page": "https://github.com/finos/qPython",
"name": "pythonKdb",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "kdb+,q",
"author": "SPOLIT",
"author_email": "spyridon.politis@totsa.com",
"download_url": "https://files.pythonhosted.org/packages/b6/60/4e10037dbacb09e6198d4ad34610b201bf4ca3fbc35466a591606a31638d/pythonKdb-3.0.5.tar.gz",
"platform": null,
"description": "qPython\r\n=======\r\n\r\nqPython is a Python library providing support for interprocess communication between Python and kdb+ processes, it offers:\r\n\r\n- Synchronous and asynchronous queries\r\n- Convenient asynchronous callbacks mechanism\r\n- Support for kdb+ protocol and types as of kdb+ v4.0\r\n- Uncompression of the IPC data stream\r\n- Internal representation of data via numpy arrays (lists, complex types) and numpy data types (atoms)\r\n- Supported on Python 3.4/3.5/3.6 and numpy 1.8+\r\n\r\nFor more details please refer to the `documentation`_.\r\n\r\n\r\nInstallation\r\n------------\r\n\r\nTo install qPython from PyPI:\r\n\r\n``$ pip install qpython3``\r\n\r\n**Please do not use old PyPI package name: qpython or exxeleron-qpython.**\r\n\r\nTo install qPython from internal PyPI:\r\n\r\n``$ pip install --trusted-host pypi.dts.corp.local --extra-index-url https://pypi.dts.corp.local/root/citizen/+simple/ qpython\r\n\r\nBuilding package\r\n----------------\r\n\r\n``$ python setup.py sdist bdist_wheel\r\n\r\nDocumentation\r\n~~~~~~~~~~~~~\r\n\r\nqPython documentation is generated with help of `Sphinx`_ document generator.\r\nIn order to build the documentation, including the API docs, execute:\r\n``make html`` from the doc directory.\r\n\r\nDocumentation is built into the: ``doc/build/html/`` directory.\r\n\r\n\r\nCompile Cython extensions\r\n~~~~~~~~~~~~~~~~~~~~~~~~~\r\n\r\nqPython utilizes `Cython`_ to tune performance critical parts of the code.\r\n\r\nInstructions:\r\n\r\n- Execute: ``python setup.py build_ext --inplace``\r\n\r\n\r\nBuild binary distribution\r\n~~~~~~~~~~~~~~~~~~~~~~~~~\r\n\r\nInstructions:\r\n\r\n- Execute: ``python setup.py bdist``\r\n\r\n\r\nTesting\r\n~~~~~~~\r\n\r\nqPython uses py.test as a test runner for unit tests.\r\n\r\nInstructions:\r\n\r\n- Make sure that top directory is included in the ``PYTHONPATH``\r\n- Execute: ``py.test``\r\n\r\n\r\nCVE Scanning\r\n~~~~~~~~~~~~\r\n\r\nConfigured GitHub Action as per the \"Python\" section of:\r\n\r\n- https://github.com/maoo/security-scanning\r\n\r\n\r\nRequirements\r\n~~~~~~~~~~~~\r\n\r\nqPython requires numpy 1.8 to run.\r\n\r\nOptional requirements have to be met to provide additional features:\r\n\r\n- tune performance of critical parts of the code:\r\n\r\n - Cython 0.20.1\r\n\r\n- support serialization/deserialization of ``pandas.Series`` and ``pandas.DataFrame``\r\n\r\n - pandas 0.14.0\r\n\r\n- run Twisted sample:\r\n\r\n - Twisted 13.2.0\r\n\r\n- build documentation via Sphinx:\r\n\r\n - Sphinx 1.2.3\r\n - mock 1.0.1\r\n\r\nRequired libraries can be installed using `pip`_.\r\n\r\nTo install all the required dependencies, execute:\r\n``pip install -r requirements.txt``\r\n\r\nMinimal set of required dependencies can be installed by executing:\r\n``pip install -r requirements-minimal.txt``\r\n\r\n.. _Cython: http://cython.org/\r\n.. _Sphinx: http://sphinx-doc.org/\r\n.. _pip: http://pypi.python.org/pypi/pip\r\n.. _documentation: http://qpython.readthedocs.org/en/latest/\r\n",
"bugtrack_url": null,
"license": "Apache License Version 2.0",
"summary": "kdb+ interfacing library for Python",
"version": "3.0.5",
"project_urls": {
"Homepage": "https://github.com/finos/qPython"
},
"split_keywords": [
"kdb+",
"q"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f9b1f9679901c6f320d009f1b715e2e7956971960aff33a375b8ed3d66bd7254",
"md5": "ebf314800ac58bf1a4dfff45776d539c",
"sha256": "6fafbd29aaa5506147cf85ffc39157178cac7c8e9890513be9a07243a5296fa8"
},
"downloads": -1,
"filename": "pythonKdb-3.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ebf314800ac58bf1a4dfff45776d539c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 42069,
"upload_time": "2024-02-26T10:46:10",
"upload_time_iso_8601": "2024-02-26T10:46:10.363919Z",
"url": "https://files.pythonhosted.org/packages/f9/b1/f9679901c6f320d009f1b715e2e7956971960aff33a375b8ed3d66bd7254/pythonKdb-3.0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b6604e10037dbacb09e6198d4ad34610b201bf4ca3fbc35466a591606a31638d",
"md5": "e2f6cf76b6417f3cc0365fd494c13fcf",
"sha256": "d02e78ca5d2c46c3a642a74a6c072e29a4c9bf049558270b83b9fd4eb277de38"
},
"downloads": -1,
"filename": "pythonKdb-3.0.5.tar.gz",
"has_sig": false,
"md5_digest": "e2f6cf76b6417f3cc0365fd494c13fcf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29956,
"upload_time": "2024-02-26T10:46:12",
"upload_time_iso_8601": "2024-02-26T10:46:12.184092Z",
"url": "https://files.pythonhosted.org/packages/b6/60/4e10037dbacb09e6198d4ad34610b201bf4ca3fbc35466a591606a31638d/pythonKdb-3.0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-26 10:46:12",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "finos",
"github_project": "qPython",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "pythonkdb"
}