|author||Ivan Daschinsky <email@example.com>||Wed Jun 09 14:07:08 2021 +0300|
|committer||Ivan Daschinsky <firstname.lastname@example.org>||Wed Jun 09 14:07:08 2021 +0300|
IGNITE-12467 Implement transactions, rewrite async connections using protocol and transport - Fixes #40.
Apache Ignite thin (binary protocol) client, written in Python 3.
If you only want to use the
pyignite module in your project, do:
$ pip install pyignite
If you want to run tests, examples or build documentation, clone the whole repository:
$ git clone email@example.com:apache/ignite-python-thin-client.git $ pip install -e .
This will install the repository version of
pyignite into your environment in so-called “develop” or “editable” mode. You may read more about editable installs in the
Then run through the contents of
requirements folder to install the additional requirements into your working Python environment using
$ pip install -r requirements/<your task>.txt
You may also want to consult the
setuptools manual about using
There is an optional C extension to speedup some computational intensive tasks. If it's compilation fails (missing compiler or CPython headers),
pyignite will be installed without this module.
On Linux or MacOS X only C compiler is required (
clang). It compiles during standard setup process.
For building universal
wheels (binary packages) for Linux, just invoke script
NB! Docker is required.
On Windows MSVC 14.x required, and it should be in path, also python versions 3.6, 3.7, 3.8 and 3.9 both for x86 and x86-64 should be installed. You can disable some of these versions but you'd need to edit script for that.
wheels for Windows, invoke script
.\scripts\BuildWheels.ps1 using PowerShell. Just make sure that your execution policy allows execution of scripts in your environment.
Ready wheels for
x86-64 for different python versions (3.6, 3.7, 3.8 and 3.9) will be located in
To upgrade an existing package, use the following command:
pip install --upgrade pyignite
To install the latest version of a package:
pip install pyignite
To install a specific version:
pip install pyignite==0.4.0
The package documentation is available at RTD for your convenience.
If you want to build the documentation from source, do the developer installation as described above, then run the following commands from the client's root directory:
$ pip install -r requirements/docs.txt $ cd docs $ make html
docs/generated/html/index.html in your browser.
Some examples of using pyignite are provided in
examples folder. They are extensively commented in the “Examples of usage” section of the documentation.
This code implies that it is run in the environment with
pyignite package installed, and Apache Ignite node is running on localhost:10800.
NB! It is recommended installing
pyignite in development mode. Refer to this section for instructions.
Do not forget to install test requirements:
$ pip install -r requirements/install.txt -r requirements/tests.txt
Also, you'll need to have a binary release of Ignite with
log4j2 enabled and to set
IGNITE_HOME environment variable:
$ cd <ignite_binary_release> $ export IGNITE_HOME=$(pwd) $ cp -r $IGNITE_HOME/libs/optional/ignite-log4j2 $IGNITE_HOME/libs/
$ pytest --examples
If you need to change the connection parameters, see the documentation on testing.