Skip to main content

A fast Tarantool Database connector for Python/asyncio.

Project description

asynctnt

Build PyPI Maintainability

asynctnt is a high-performance Tarantool database connector library for Python/asyncio. It was highly inspired by asyncpg module.

asynctnt requires Python 3.7 or later and is supported for Tarantool versions 1.10+.

Installation

Use pip to install:

$ pip install asynctnt

Documentation

Documentation is available here.

Key features

  • Support for all the basic requests that Tarantool supports. This includes: insert, select, update, upsert, call, eval, execute.
  • Full support for SQL, including prepared statements.
  • Support for interactive transaction via Tarantool streams.
  • Support of Decimal, UUID,datetime types natively.
  • Support for interval types.
  • Support for parsing custom errors.
  • Schema fetching on connection establishment, so you can use spaces and indexes names rather than their ids, and auto refetching if schema in Tarantool is changed
  • Auto reconnect. If connection is lost for some reason - asynctnt will start automatic reconnection procedure (with authorization and schema fetching, of course).
  • Ability to use dicts for tuples with field names as keys in DML requests (select, insert, replace, delete, update, upsert). This is possible only if space.format is specified in Tarantool. Field names can also be used in update operations instead of field numbers. Moreover, tuples are decoded into the special structures that can act either as tuples or by dicts with the appropriate API.
  • All requests support specification of timeout value, so if request is executed for too long, asyncio.TimeoutError is raised.

Basic Usage

Tarantool config:

box.cfg {
    listen = '127.0.0.1:3301'
}

box.once('v1', function()
    box.schema.user.grant('guest', 'read,write,execute', 'universe')

    local s = box.schema.create_space('tester')
    s:create_index('primary')
    s:format({
        { name = 'id', type = 'unsigned' },
        { name = 'name', type = 'string' },
        { name = 'uuid', type = 'uuid' },
    })
end)

Python code:

import uuid
import asyncio
import asynctnt


async def main():
    conn = asynctnt.Connection(host='127.0.0.1', port=3301)
    await conn.connect()

    for i in range(1, 11):
        await conn.insert('tester', [i, 'hello{}'.format(i), uuid.uuid4()])

    data = await conn.select('tester', [])
    tup = data[0]
    print('tuple:', tup)
    print(f'{tup[0]=}; {tup["id"]=}')
    print(f'{tup[1]=}; {tup["name"]=}')
    print(f'{tup[2]=}; {tup["uuid"]=}')

    await conn.disconnect()


asyncio.run(main())

Stdout:

(note that you can simultaneously access fields either by indices or by their names)

tuple: <TarantoolTuple id=1 name='hello1' uuid=UUID('ebbad14c-f78c-42e8-bd12-bfcc564443a6')>
tup[0]=1; tup["id"]=1
tup[1]='hello1'; tup["name"]='hello1'
tup[2]=UUID('ebbad14c-f78c-42e8-bd12-bfcc564443a6'); tup["uuid"]=UUID('ebbad14c-f78c-42e8-bd12-bfcc564443a6')

SQL

Tarantool 2.x brought out an SQL interface to the database. You can easily use it in asynctnt

box.cfg {
    listen = '127.0.0.1:3301'
}

box.once('v1', function()
    box.schema.user.grant('guest', 'read,write,execute', 'universe')

    box.execute([[
        create table users (
            id int primary key,
            name text
        )
    ]])
end)
import asyncio
import asynctnt


async def main():
    conn = asynctnt.Connection(host='127.0.0.1', port=3301)
    await conn.connect()

    await conn.execute("insert into users (id, name) values (?, ?)", [1, 'James Bond'])
    await conn.execute("insert into users (id, name) values (?, ?)", [2, 'Ethan Hunt'])
    data = await conn.execute('select * from users')

    for row in data:
        print(row)

    await conn.disconnect()

asyncio.run(main())

Stdout:

<TarantoolTuple ID=1 NAME='James Bond'>
<TarantoolTuple ID=2 NAME='Ethan Hunt'>

More about SQL features in asynctnt please refer to the documentation

Performance

Two performance tests were conducted:

  1. Seq -- Sequentially calling 40k requests and measuring performance
  2. Parallel -- Sending 200k in 300 parallel coroutines

On all the benchmarks below wal_mode = none. Turning uvloop on has a massive effect on the performance, so it is recommended to use asynctnt with it

Benchmark environment

  • MacBook Pro 2020
  • CPU: 2 GHz Quad-Core Intel Core i5
  • Memory: 16GB 3733 MHz LPDDR4X

Tarantool:

box.cfg{wal_mode = 'none'}
Seq (uvloop=off) Seq (uvloop=on) Parallel (uvloop=off) Parallel (uvloop=on)
ping 12940.93 19980.82 88341.95 215756.24
call 11586.38 18783.56 74651.40 137557.25
eval 10631.19 17040.57 61077.84 121542.42
select 9613.88 16718.97 61584.07 152526.21
insert 10077.10 16989.06 65594.82 135491.25
update 10832.16 16562.80 63003.31 121892.28
execute 10431.75 16967.85 58377.81 96891.61

License

asynctnt is developed and distributed under the Apache 2.0 license.

References

  1. Tarantool - in-memory database and application server.
  2. aiotarantool - alternative Python/asyncio connector
  3. asynctnt-queue - bindings on top of asynctnt for tarantool-queue

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asynctnt-2.3.0.tar.gz (552.1 kB view details)

Uploaded Source

Built Distributions

asynctnt-2.3.0-pp310-pypy310_pp73-win_amd64.whl (311.0 kB view details)

Uploaded PyPy Windows x86-64

asynctnt-2.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (389.0 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (400.6 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

asynctnt-2.3.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl (310.3 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

asynctnt-2.3.0-cp312-cp312-win_amd64.whl (324.5 kB view details)

Uploaded CPython 3.12 Windows x86-64

asynctnt-2.3.0-cp312-cp312-win32.whl (283.8 kB view details)

Uploaded CPython 3.12 Windows x86

asynctnt-2.3.0-cp312-cp312-musllinux_1_1_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

asynctnt-2.3.0-cp312-cp312-musllinux_1_1_i686.whl (2.1 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ i686

asynctnt-2.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

asynctnt-2.3.0-cp312-cp312-macosx_11_0_arm64.whl (359.3 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

asynctnt-2.3.0-cp311-cp311-win_amd64.whl (327.3 kB view details)

Uploaded CPython 3.11 Windows x86-64

asynctnt-2.3.0-cp311-cp311-win32.whl (286.0 kB view details)

Uploaded CPython 3.11 Windows x86

asynctnt-2.3.0-cp311-cp311-musllinux_1_1_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

asynctnt-2.3.0-cp311-cp311-musllinux_1_1_i686.whl (2.2 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

asynctnt-2.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

asynctnt-2.3.0-cp311-cp311-macosx_11_0_arm64.whl (352.2 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

asynctnt-2.3.0-cp310-cp310-win_amd64.whl (323.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

asynctnt-2.3.0-cp310-cp310-win32.whl (285.1 kB view details)

Uploaded CPython 3.10 Windows x86

asynctnt-2.3.0-cp310-cp310-musllinux_1_1_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

asynctnt-2.3.0-cp310-cp310-musllinux_1_1_i686.whl (2.0 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

asynctnt-2.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

asynctnt-2.3.0-cp310-cp310-macosx_11_0_arm64.whl (350.3 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

asynctnt-2.3.0-cp39-cp39-win_amd64.whl (323.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

asynctnt-2.3.0-cp39-cp39-win32.whl (285.3 kB view details)

Uploaded CPython 3.9 Windows x86

asynctnt-2.3.0-cp39-cp39-musllinux_1_1_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

asynctnt-2.3.0-cp39-cp39-musllinux_1_1_i686.whl (2.0 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

asynctnt-2.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

asynctnt-2.3.0-cp39-cp39-macosx_11_0_arm64.whl (350.4 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

asynctnt-2.3.0-cp38-cp38-win_amd64.whl (325.5 kB view details)

Uploaded CPython 3.8 Windows x86-64

asynctnt-2.3.0-cp38-cp38-win32.whl (286.6 kB view details)

Uploaded CPython 3.8 Windows x86

asynctnt-2.3.0-cp38-cp38-musllinux_1_1_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

asynctnt-2.3.0-cp38-cp38-musllinux_1_1_i686.whl (2.2 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

asynctnt-2.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.1 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

asynctnt-2.3.0-cp38-cp38-macosx_11_0_arm64.whl (350.5 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

asynctnt-2.3.0-cp37-cp37m-win_amd64.whl (315.2 kB view details)

Uploaded CPython 3.7m Windows x86-64

asynctnt-2.3.0-cp37-cp37m-win32.whl (278.0 kB view details)

Uploaded CPython 3.7m Windows x86

asynctnt-2.3.0-cp37-cp37m-musllinux_1_1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

asynctnt-2.3.0-cp37-cp37m-musllinux_1_1_i686.whl (1.8 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

asynctnt-2.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

asynctnt-2.3.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.8 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

File details

Details for the file asynctnt-2.3.0.tar.gz.

File metadata

  • Download URL: asynctnt-2.3.0.tar.gz
  • Upload date:
  • Size: 552.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0.tar.gz
Algorithm Hash digest
SHA256 b39cee55c837dfda593488ad12efa268ac4638f3b01c3875497e47ef4bb901f2
MD5 73454e22a4cd41f0aa8c1f411ce9cae9
BLAKE2b-256 1dcd98d73a645f0d8518eae3fe2d6c28084c78d089010a36fe6f1e5cdd592174

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 0df43088f1562132403abded281944c01ed4c08a01a926968c9d2128c3f7ce70
MD5 16d71c00f8b5f58f7d244fc2250e18f6
BLAKE2b-256 f362342ccf00396761455cdac1f48c30f160da5f95f9bc2089da978f2d232402

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ef590aa246155aba81b1c13fa6fb4655342325666fb7919c27edce73c4a7845
MD5 162f031ebc4ad20d8cb5ce3a1506fd35
BLAKE2b-256 404a994345f4d23b51190a8ef736485dff0af9b0ee6be18a612c4f44a60db2a6

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2fbd27cceb58ab3297d396a27a7fdc0b5ae696258e53ad782ddd14975fec122e
MD5 20f54db03ec0a1f9153b20ee5910b772
BLAKE2b-256 dd80a50a69fc2b07f3b42850243ac1ca6cca34a3ca84e0718d8eb102d5d073e6

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9a75e5a5a8563e94145e975d63874d1cad300d9cee05f58edd629b04c1d93243
MD5 ecc171ffcef2be62cea74cbd6ff0390e
BLAKE2b-256 a076693a94a0aab7b9f7645816acfccb1c99ed8e92dfeddbcd523a20e88ef72a

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 324.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f4f4b1d2f88c63c051a3ed3797eda17c8da3546f8a5da03788868789cf07f91e
MD5 84b2392a5f58e84a33b3bb88c71b1dc0
BLAKE2b-256 c0142ce6e752ff96a9cd6647672b31f48ab326de15c8bbd2252b447349d4e4cb

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 283.8 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 4034e2e04d7304227bd8a3d5cbc5dffa35ed3f0fc20749b1b642cd0a2fce6deb
MD5 3316c69702e74e9c80fdcc7ca054e6b2
BLAKE2b-256 17492c92bcf5f988269aa8b43c20824d41066c1f44e1b21728c73ff7aed6fc53

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 7df3b3ddf090d6c7a5da6d2b07c8c11fc0490c1b9f631cb2fc273434666b6ccd
MD5 685939271eb2c561907dfd16f4a01f0b
BLAKE2b-256 5a25742d6c92cbdf17910e70eb97dc5e6c25f7f0caf4cb697b86192a9b4b1a58

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 b69c4d0605397df864f3b43aeb76b51b94c7f5a9404ce7311c783e092eb752a7
MD5 ee37a6b30801b7cf54112f8a964e50f0
BLAKE2b-256 0bc29c3595d0b366951f7acefbeb9f773dbe67478a38117835fa5c21a8da5df9

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b347407515e1a0ad1bb561e93a5aae293a3b7429912cbe07806627e92a59e155
MD5 0571a8773fb74d02330117df47de8484
BLAKE2b-256 cde5dd6cc184afa748e9b4a679eb57d7b9f4039fb617aca4e2da6248c67e65e5

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 32f36d7898ef9b57383dc9e16d2937cc82265452c0c8849a07c74e97187d3f4f
MD5 389053262d0b2bebcfd2244fe5792e10
BLAKE2b-256 76402cd2110fb7e8726de09a22d2e6b8b3d848bf8b61ed136ee9aada076a7108

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1c6096f226699dbfa2c34178dd2c42b6d4c625a78029244b526e91734894c010
MD5 bac5fa03804735e80cf014f475defba0
BLAKE2b-256 16f15c9584fa9091c5d62b2ebdfc8f8eb9525a13645b78a43f7f5320c11a9a87

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 327.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3ad77a63f2b5c4b34f7cdd8bca394dc8b2eedee2cf0b77eea025801df9c3ad68
MD5 f629a307d4939d4f2c88fe4ff7e735cb
BLAKE2b-256 9f435e69897a9ee97c402e0264f7fdd729d4cf42b941df770a5e81b4d8802b21

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 286.0 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 fc36c46807b7d82833da86ec5fa8f10cfe6207228027616ddd91b7b8e83180ad
MD5 1c37fc407fc56dd67e0b63c2dd27c7c6
BLAKE2b-256 f8a41d506021ac7da76eedb9e5bc5bdd09e7a8bd20d6ebcc65df17f386b5dd53

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 668a4323879f0a98ecb4b9669f79c9c6eb3638d18f46eb843307734e2ee9b35b
MD5 099853fe98c254209c57ecafabfb7fc7
BLAKE2b-256 c27f73cf8e2740682e52d51c19ef6c89fe64aa06e4e77f68835763ca73ead13c

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 e54f87c8e44452fb7bab42021d08690b0386ae4a9e35ef892df8b7c2758bfc3e
MD5 5dd2fd934f0e16a7df1853326a00ced0
BLAKE2b-256 05dbfcc353602c67d397ae238c92721f7fccbc083d1709c8bb6d98313f0b715b

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 41d30075e54177c3be4f87d51117190f308bf397d02cf813cf22fb7c97d2cd3a
MD5 348ebdb1d4f2076d4474e1800f55841e
BLAKE2b-256 57649fa63e1895c1ea1f068c9e847f3ee57efe9f4d490f88e7c4478ab34571d2

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ba0dde00d31a1cec8e79201b76a6df749c1db87ff84404467acec00e1a436283
MD5 9becaa5d1a2b8ece447544112526a046
BLAKE2b-256 b62509ed5038b0d10e4d88f0dd86082b5683c28ce8b0161c65f836067eb895fd

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d7ccff8e55013b148e822e0959c83a32372acc5fab2f0690fa77c31978e1c200
MD5 765f1d19362e5d1e013ae3204e95f65e
BLAKE2b-256 9c777530345243aa3efd7d551f255fb8a970b6d45e13aaf1dd3dc03b842807bd

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 323.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9d7e9f589225d9fe47d862f8175292295c07cf47af5278544008588c629c00a1
MD5 0f0d8e29be94051a1982f29407130d02
BLAKE2b-256 0f7c1cc178a86adef40762f2873951cb4264d450c21beeb98452254276d9010f

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 285.1 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 c8a3d64339c461afcc20156395ee53015fe60a25eca8aea2ae581b388477b9c7
MD5 6b688ccee515afa2c35fc78ea57db137
BLAKE2b-256 4ee97f047a78a8a87163722990f82db2c4db7c411b4b7ca7c39c020106005cd7

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a92d71a6de3d0d9270316274980b67224952ffa48300333ad4bc73f5b72784f4
MD5 218ba284e5fcd44ca7218f32f85e59aa
BLAKE2b-256 4da0d6fa7e456eeb948a4632a0f870ee99560a698dc06f8ea518c8beeaa8dd07

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 2ddbe85648e44967c45774dc1616ab1f4a84212365788e371df3ccc261af0618
MD5 a740d019e46deb69233253239663372a
BLAKE2b-256 f54cf1bdfc30c6aa17957e36b11982ce009f670c83058a41db2de2d4bb1e2547

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 38bb3c0e2749c508fbf432eae2f8718095fad70b06c53414f8829ac84051e41b
MD5 8ad904e434622a6f86698446769b3164
BLAKE2b-256 d437e5d120b7f217ff6badedcd0c968338321819b9079dee40dddd62b825fc4e

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2268768aab38b0d8b317a0985eea12589d3d44ac7dc90d92faf0919ee78b47e9
MD5 d851bf77023223f82bc1916761a5e5b0
BLAKE2b-256 5a81cc3f972088a87a34a28448bed12ff2a52247598457ab707187490cefbe6d

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b86837996c964afd099c1998469a0180f3643bb16f64537efe221bdae689723
MD5 79830b6cc5f7236f5dd84394037dd78e
BLAKE2b-256 37cb53c0efc6c2a1bac2df15e8f25f313c739a14ea1d6a9747cf403bda4938de

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 323.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 55d6c3869c4b087228370312aec390aa19503da15bd2cad6560468c5a14cbab4
MD5 7262c9d30f2c3c201d6efafcfc40d881
BLAKE2b-256 faab2e702f27b37fef10baf8c8eb2488a74d2969003781ba9cbb36c989230cb0

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 285.3 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 491ddd721a8649e3c358239b9a93af272eeec18a364b34cb07fe936884e8a66b
MD5 a3ebfbdaf9315472055ed3de1b7f4f01
BLAKE2b-256 c255e09712491be822b968278eba4a8a4f2d0e09adb11290573caf6c3713697d

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 de9298976085836e7f28e40c1386f61cf210ddaa05bf56a7e3d5d725d69b7992
MD5 cf8d19fad84a5fc500a663a4f6073f83
BLAKE2b-256 e085f5e29cae031d458a2ae2d564b69d91c5058783d416014ea99ca03d8739dd

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 5673e4e7f6156fb0d7d31abcbcb4da915b2eec6d8e3c9b36690f2cb1872eb0aa
MD5 c545a28bf17bd3c84f05049eddb49838
BLAKE2b-256 bf8254875ad5ffe38035ac02e274962df8469d0868b4261c13d70a377a626d87

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 acf4dace0453c716d4065622fe4443ebf29c363b52e3104be34cc731be031666
MD5 380e3694d725c1c1ad13e232ea5f3424
BLAKE2b-256 236077eff9d2a5bd389f0e046adafbac3e17d7383633ac998733f44d22911c66

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 45b899da66598ce7551dabd2a9241b46fb669d22cf7ddc0436268683120b6bec
MD5 73fb49d5f86b93739654269b83b78cf6
BLAKE2b-256 5153e9e9ed8e1b86c69ef6fb6964eb88306da7445dba54e1640a61696cfef844

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 049f2390d20da44bdc2747452ad4d2571147fabef528e2aa61a98bf167a50f25
MD5 ed06d6e1e2d602ca450c3a8837ef9ac9
BLAKE2b-256 42ac1b4bc4361aedff1f270757599cfac10fbaf472b5769a34c9665ec1300b46

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 325.5 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 bed407cc9c55b1b1c43efdc60f533959ae10f82260ad35c727c146304d5d9c48
MD5 f8d897dc2df6666eebe73b35b7d41d02
BLAKE2b-256 996f8c515b6d674a18ca5f93772ecce5d02ffb14fa12cbe2c2891646de27e2ee

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 286.6 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 d3a684a3fa5c86713d19b4af03340cb1238ade768065189479033effcc2fb458
MD5 4d8b090bc06ed1578ed9ba57cac856e3
BLAKE2b-256 5805c386f0adafc6a8e31f5c4611b05a2b8422a114841ec31cbfa56dd4a84907

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 6bc3c47f1fde5f74c836f216462ae1fbef083e7ad83e3d3adda6319739edff4c
MD5 59274cbce7a7a270738d8ccec834e476
BLAKE2b-256 f2928353bb1279ea0890d9f43071a95a486acf89999f283d054feb17010dd235

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 7a984e99a62e33ea49b0fd86f9794f822a7d3cfe1af8083b75fc67b314fdd126
MD5 9799a4f679c394f1c17cc200a1730ede
BLAKE2b-256 06536b60b43a9afd47ad852dccfb90393a1b8aa36f7eea8cfe991f741de6b190

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7180c98e4947d9b6a117f80d2627c548880254d8bd184b33f65b0bc08cd739f3
MD5 4fa48cd18f60c6222a04e94298d72cfd
BLAKE2b-256 1adaa03059f1b9d8baf837e232af5424aff162419d95dab58e1900fc63f41ab9

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f153bcaaece22610db41ef3549476109336e5896dc7d4f3a03a4f87ea08f1588
MD5 06ef488cf3edf7de6e68ecb32f2f953e
BLAKE2b-256 3a9be66ee34c37e7b591adafa7c6537856008c186ecb43a8d17a2786f2332b5e

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e23e6aa9af9f6f682b14f0d3b7093a4a4686fd08d8de360d0b7d6be7daf8f1ab
MD5 d6c3fe9103b21e26f94c658312cbeaf5
BLAKE2b-256 cad4bfdbf6f90258805b8de5f36ede0889663e5c4c104a8f20626970fbebd60d

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 315.2 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 e6f21aaaf85af96f321a5c2176a2cdb7e374356244578accd059efb7d2a1e1cb
MD5 1730a494ba523b616418f6177c59752d
BLAKE2b-256 e4f36fd21f39726613bcc235f334809cb678d67e8d7ce141647bea20ee692456

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp37-cp37m-win32.whl.

File metadata

  • Download URL: asynctnt-2.3.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 278.0 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for asynctnt-2.3.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 401847d82ecee8ff74ce6cd5100ae024b38b546131c8f1b20752ef6486f21a8c
MD5 ec202985ce6591ffaeaab3197abb54d8
BLAKE2b-256 cbe4ac49b947827eaf6607f42aa93bed2bcd6736cffb85e03e7d6a3b38af3bca

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 21aba15af353ef899952a34b7a60b66cae58f65592900fedc4f6c7946a372f10
MD5 2193e0cb0880d3fdf0da22c7174e60d0
BLAKE2b-256 7b3dd53825d86b5ddff66c6b83c425ba25181817d3cfa43eb2be2eac0f0f951f

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp37-cp37m-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 b2c5061d8a7064c67b4eee430098adaedf9314f611a0a16133f7fd8507d3cfff
MD5 519260bc402dd8cbcd35b33369e09d8c
BLAKE2b-256 196280714fbaa85d950fe7357e9b62b21ace0cb70a261b7eb0a1dcbbeab04b4f

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d5fbd5515ac99660ed04c9a0821c7b228d6fd6f7fb792940a2ef6f8d7f45aa01
MD5 8667c2ee3d1c382053caaf471bb30516
BLAKE2b-256 edb0642c17325823368e5ac0cc654daff53a183803573ce79b7a74a796b9072a

See more details on using hashes here.

File details

Details for the file asynctnt-2.3.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for asynctnt-2.3.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 73226a17724b61fa20fefc4180fff434eeb9d82f5b6bc7a958ba267c46362f4a
MD5 273cec61160233e0b2282710103be9ca
BLAKE2b-256 803943ab6072e0e77d2e4cdcc386f7793da3d1185c91d57f402059772b670880

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page