Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

tarantool

Package Overview
Dependencies
Maintainers
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tarantool

Python client library for Tarantool

  • 1.2.0
  • PyPI
  • Socket score

Maintainers
6

Python driver for Tarantool

.. image:: https://github.com/tarantool/tarantool-python/actions/workflows/testing.yml/badge.svg?branch=master :target: https://github.com/tarantool/tarantool-python/actions/workflows/testing.yml .. image:: https://github.com/tarantool/tarantool-python/actions/workflows/packing.yml/badge.svg?branch=master :target: https://github.com/tarantool/tarantool-python/actions/workflows/packing.yml

This package is a pure-python client library for Tarantool_.

Documentation_ | Downloads_ | PyPI_ | GitHub_ | Issue tracker_

.. _Documentation: http://tarantool-python.readthedocs.org/en/latest/ .. _Downloads: http://pypi.python.org/pypi/tarantool#downloads .. _PyPI: http://pypi.python.org/pypi/tarantool .. _GitHub: https://github.com/tarantool/tarantool-python .. _Issue tracker: https://github.com/tarantool/tarantool-python/issues

Download and install

With pip (recommended) ^^^^^^^^^^^^^^^^^^^^^^

The recommended way to install the tarantool package is using pip.

.. code-block:: bash

 $ pip3 install tarantool

With dnf ^^^^^^^^

You can install python3-tarantool RPM package if you use Fedora (34, 35, 36).

Add the repository

.. code-block:: bash

 $ curl -L https://tarantool.io/OtKysgx/release/2/installer.sh | bash

and then install the package

.. code-block:: bash

 $ dnf install -y python3-tarantool

With apt ^^^^^^^^

You can install python3-tarantool deb package if you use Debian (10, 11) or Ubuntu (20.04, 22.04).

Add the repository

.. code-block:: bash

 $ curl -L https://tarantool.io/OtKysgx/release/2/installer.sh | bash

and then install the package

.. code-block:: bash

 $ apt install -y python3-tarantool

ZIP archive ^^^^^^^^^^^

You can also download zip archive, unpack it and run:

.. code-block:: bash

$ make install

Development version ^^^^^^^^^^^^^^^^^^^

You can also install the development version of the package using pip.

.. code-block:: bash

$ pip3 install git+https://github.com/tarantool/tarantool-python.git@master

What is Tarantool?

Tarantool_ is an in-memory computing platform originally designed by VK_ and released under the terms of BSD license_.

Features

  • ANSI SQL, including views, joins, referential and check constraints

  • Lua packages for non-blocking I/O, fibers, and HTTP

  • MessagePack data format and MessagePack-based client-server protocol

  • Two data engines:

    • memtx – in-memory storage engine with optional persistence
    • vinyl – on-disk storage engine to use with larger data sets
  • Secondary key and index iterator support (can be non-unique and composite)

  • Multiple index types: HASH, BITSET, TREE, RTREE

  • Asynchronous master-master replication

  • Authentication and access control

See More ^^^^^^^^

  • Tarantool homepage_
  • Tarantool on GitHub_
  • Tarantool documentation_
  • Client-server protocol specification_

NOTE ^^^^

This driver is synchronous, so connection mustn't be shared between threads/processes.

If you're looking for an asynchronous Python driver based on asyncio, consider using asynctnt_ . See also the feature comparison table_.

Run tests ^^^^^^^^^

On Linux:

.. code-block:: bash

$ make test

On Windows:

  • Setup a Linux machine with Tarantool installed. This machine will be referred to as remote in this instruction.
  • (On remote) Copy test/suites/lib/tarantool_python_ci.lua to /etc/tarantool/instances.available.
  • (On remote) Run tarantoolctl start tarantool_python_ci.
  • Set the following environment variables:
    • REMOTE_TARANTOOL_HOST=...,
    • REMOTE_TARANTOOL_CONSOLE_PORT=3302.
  • Run make test.

Build docs ^^^^^^^^^^

To build documentation, first you must install its build requirements:

.. code-block:: bash

$ pip3 install -r docs/requirements.txt

Then run

.. code-block:: bash

$ make docs

You may host local documentation server with

.. code-block:: bash

$ python3 -m http.server --directory build/sphinx/html

Open localhost:8000 in your browser to read the docs.

.. _Tarantool: .. _Tarantool Database: .. _Tarantool homepage: https://tarantool.io .. _Tarantool on GitHub: https://github.com/tarantool/tarantool .. _Tarantool documentation: https://www.tarantool.io/en/doc/latest/ .. _VK: https://vk.company .. _Client-server protocol specification: https://www.tarantool.io/en/doc/latest/dev_guide/internals/box_protocol/ .. _BSD: .. _BSD license: .. _BSD-2-Clause: https://opensource.org/licenses/BSD-2-Clause .. _asynctnt: https://github.com/igorcoding/asynctnt .. _feature comparison table: https://www.tarantool.io/en/doc/latest/book/connectors/#python-feature-comparison

License ^^^^^^^

BSD-2-Clause. See the LICENSE file.

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc