Skip to main content

Fast Python bindings for the UnQLite embedded NoSQL database.

Project description

Fast Python bindings for UnQLite, a lightweight, embedded NoSQL database and JSON document store.

This is a forked version from coleifer/unqlite-python for better handling installation issues. The source codes are identical, but we use workflow to pre-compile different versions for environments and release to pypi.org with these pre-compiled wheel files.

Please note

Read the issue tracker for this database before considering using it. UnQLite has not seen any meaningful development since 2014. It is strongly recommended that you use Sqlite. Sqlite has robust support for json and is actively developed and maintained.

Features

UnQLite features:

  • Embedded, zero-conf database
  • Transactional (ACID)
  • Single file or in-memory database
  • Key/value store
  • Cursor support and linear record traversal
  • JSON document store
  • Thread-safe
  • Terabyte-sized databases

UnQLite-Python features:

  • Compiled library, extremely fast with minimal overhead.
  • Supports key/value operations, cursors, and transactions using Pythonic APIs.
  • Support for Jx9 scripting.
  • APIs for working with Jx9 JSON document collections.

Links:

Installation

You can install medspacy-unqlite using pip.

pip install medspacy-unqlite

Basic usage

Below is a sample interactive console session designed to show some of the basic features and functionality of the unqlite-python library. Also check out the full API documentation.

To begin, instantiate an UnQLite object. You can specify either the path to a database file, or use UnQLite as an in-memory database.

>>> from unqlite import UnQLite
>>> db = UnQLite()  # Create an in-memory database.

Key/value features

UnQLite can be used as a key/value store.

>>> db['foo'] = 'bar'  # Use as a key/value store.
>>> db['foo']  # The key/value store deals in byte-strings.
b'bar'

>>> for i in range(4):
...     db['k%s' % i] = str(i)
...

>>> 'k3' in db
True
>>> 'k4' in db
False
>>> del db['k3']

>>> db.append('k2', 'XXXX')
>>> db['k2']
b'2XXXX'

The database can also be iterated through directly. Note that keys are decoded while values are left as bytestrings.

>>> [item for item in db]
[('foo', b'bar'), ('k0', b'0'), ('k1', b'1'), ('k2', b'2XXXX')]

Cursors

For finer-grained record traversal, you can use cursors.

>>> with db.cursor() as cursor:
...     cursor.seek('k0')
...     for key, value in cursor:
...         print(key, '=>', value.decode('utf8'))
...
k0 => 0
k1 => 1
k2 => 2XXXX

>>> with db.cursor() as cursor:
...     cursor.seek('k2')
...     print(cursor.value())
...
b'2XXXX'

>>> with db.cursor() as cursor:
...     cursor.seek('k0')
...     print(list(cursor.fetch_until('k2', include_stop_key=False)))
...
[('k0', b'0'), ('k1', b'1')]

There are many different ways of interacting with cursors, which are described in the Cursor API documentation.

Document store features

In my opinion the most interesting feature of UnQLite is its JSON document store. The Jx9 scripting language is used to interact with the document store, and it is a wacky mix of PHP and maybe JavaScript (?).

Note: as of v0.8.0 the document store and collections APIs treat all strings as unicode.

Interacting with the document store basically consists of creating a Jx9 script (you might think of it as an imperative SQL query), compiling it, and then executing it.

>>> script = """
...     db_create('users');
...     db_store('users', $list_of_users);
...     $users_from_db = db_fetch_all('users');
... """

>>> list_of_users = [
...     {'username': 'Huey', 'age': 3},
...     {'username': 'Mickey', 'age': 5}
... ]

>>> with db.vm(script) as vm:
...     vm['list_of_users'] = list_of_users
...     vm.execute()
...     users_from_db = vm['users_from_db']
...
True

>>> users_from_db  # UnQLite assigns items in a collection an ID.
[{'username': 'Huey', 'age': 3, '__id': 0},
 {'username': 'Mickey', 'age': 5, '__id': 1}]

This is just a taste of what is possible with Jx9. In the near future I may add some wrappers around common Jx9 collection operations, but for now hopefully it is not too difficult to work with.

More information can be found in the VM API documentation.

Collections

To simplify working with JSON document collections, unqlite-python provides a light API for executing Jx9 queries on collections. A collection is an ordered list of JSON objects (records). Records can be appended or deleted, and in the next major release of UnQLite there will be support for updates as well.

To begin working with collections, you can use the factory method on UnQLite:

>>> users = db.collection('users')
>>> users.create()  # Create the collection if it does not exist.
>>> users.exists()
True

You can use the store() method to add one or many records. To add a single record just pass in a python dict. To add multiple records, pass in a list of dicts. Records can be fetched and deleted by ID.

By default, the ID of the last-stored record is returned. At the time of writing, IDs start at 0, so when inserting 3 records the last-id is 2:

>>> users.store([
...     {'name': 'Charlie', 'color': 'green'},
...     {'name': 'Huey', 'color': 'white'},
...     {'name': 'Mickey', 'color': 'black'}])
2
>>> users.store({'name': 'Leslie', 'color': 'also green'}, return_id=False)
True

>>> users.fetch(0)  # Fetch the first record.
{'__id': 0, 'color': 'green', 'name': 'Charlie'}

>>> users.delete(0)  # Delete the first record.
True
>>> users.delete(users.last_record_id())  # Delete the last record.
True

You can retrieve all records in the collection, or specify a filtering function. The filtering function will be registered as a foreign function with the Jx9 VM and called from the VM.

>>> users.all()
[{'__id': 1, 'color': 'white', 'name': 'Huey'},
 {'__id': 2, 'color': 'black', 'name': 'Mickey'}]

>>> users.filter(lambda obj: obj['name'].startswith('H'))
[{'__id': 1, 'color': 'white', 'name': 'Huey'}]

Transactions

UnQLite supports transactions for file-backed databases (since transactions occur at the filesystem level, they have no effect on in-memory databases).

The easiest way to create a transaction is with the context manager:

>>> db = UnQLite('/tmp/test.db')
>>> with db.transaction():
...     db['k1'] = 'v1'
...     db['k2'] = 'v2'
...
>>> db['k1']
b'v1'

You can also use the transaction decorator which will wrap a function call in a transaction and commit upon successful execution (rolling back if an exception occurs).

>>> @db.commit_on_success
... def save_value(key, value, exc=False):
...     db[key] = value
...     if exc:
...         raise Exception('uh-oh')
...
>>> save_value('k3', 'v3')
>>> save_value('k3', 'vx', True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "unqlite/core.py", line 312, in wrapper
    return fn(*args, **kwargs)
  File "<stdin>", line 5, in save_value
Exception: uh-oh
>>> db['k3']
b'v3'

For finer-grained control you can call db.begin(), db.rollback() and db.commit() manually:

>>> db.begin()
>>> db['k3'] = 'v3-xx'
>>> db.commit()
True
>>> db['k3']
b'v3-xx'

This code is based in part on buaabyl's pyUnQLite.

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

medspacy_unqlite-0.9.8.tar.gz (636.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

medspacy_unqlite-0.9.8-cp313-cp313-win_amd64.whl (318.2 kB view details)

Uploaded CPython 3.13Windows x86-64

medspacy_unqlite-0.9.8-cp313-cp313-win32.whl (247.0 kB view details)

Uploaded CPython 3.13Windows x86

medspacy_unqlite-0.9.8-cp313-cp313-musllinux_1_2_x86_64.whl (423.4 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

medspacy_unqlite-0.9.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (407.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

medspacy_unqlite-0.9.8-cp313-cp313-macosx_11_0_arm64.whl (332.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

medspacy_unqlite-0.9.8-cp313-cp313-macosx_10_13_x86_64.whl (359.6 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

medspacy_unqlite-0.9.8-cp312-cp312-win_amd64.whl (318.2 kB view details)

Uploaded CPython 3.12Windows x86-64

medspacy_unqlite-0.9.8-cp312-cp312-win32.whl (247.1 kB view details)

Uploaded CPython 3.12Windows x86

medspacy_unqlite-0.9.8-cp312-cp312-musllinux_1_2_x86_64.whl (421.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

medspacy_unqlite-0.9.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (408.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

medspacy_unqlite-0.9.8-cp312-cp312-macosx_11_0_arm64.whl (330.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

medspacy_unqlite-0.9.8-cp312-cp312-macosx_10_13_x86_64.whl (355.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

medspacy_unqlite-0.9.8-cp311-cp311-win_amd64.whl (316.4 kB view details)

Uploaded CPython 3.11Windows x86-64

medspacy_unqlite-0.9.8-cp311-cp311-win32.whl (248.6 kB view details)

Uploaded CPython 3.11Windows x86

medspacy_unqlite-0.9.8-cp311-cp311-musllinux_1_2_x86_64.whl (423.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

medspacy_unqlite-0.9.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (415.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

medspacy_unqlite-0.9.8-cp311-cp311-macosx_11_0_arm64.whl (327.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

medspacy_unqlite-0.9.8-cp311-cp311-macosx_10_9_x86_64.whl (349.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

medspacy_unqlite-0.9.8-cp310-cp310-win_amd64.whl (314.6 kB view details)

Uploaded CPython 3.10Windows x86-64

medspacy_unqlite-0.9.8-cp310-cp310-win32.whl (248.4 kB view details)

Uploaded CPython 3.10Windows x86

medspacy_unqlite-0.9.8-cp310-cp310-musllinux_1_2_x86_64.whl (426.0 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

medspacy_unqlite-0.9.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (418.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

medspacy_unqlite-0.9.8-cp310-cp310-macosx_11_0_arm64.whl (328.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

medspacy_unqlite-0.9.8-cp310-cp310-macosx_10_9_x86_64.whl (349.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

medspacy_unqlite-0.9.8-cp39-cp39-win_amd64.whl (315.1 kB view details)

Uploaded CPython 3.9Windows x86-64

medspacy_unqlite-0.9.8-cp39-cp39-win32.whl (248.4 kB view details)

Uploaded CPython 3.9Windows x86

medspacy_unqlite-0.9.8-cp39-cp39-musllinux_1_2_x86_64.whl (426.6 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

medspacy_unqlite-0.9.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (418.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

medspacy_unqlite-0.9.8-cp39-cp39-macosx_11_0_arm64.whl (329.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

medspacy_unqlite-0.9.8-cp39-cp39-macosx_10_9_x86_64.whl (350.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

medspacy_unqlite-0.9.8-cp38-cp38-win_amd64.whl (316.2 kB view details)

Uploaded CPython 3.8Windows x86-64

medspacy_unqlite-0.9.8-cp38-cp38-win32.whl (250.1 kB view details)

Uploaded CPython 3.8Windows x86

medspacy_unqlite-0.9.8-cp38-cp38-musllinux_1_2_x86_64.whl (419.1 kB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

medspacy_unqlite-0.9.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (405.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

medspacy_unqlite-0.9.8-cp38-cp38-macosx_11_0_arm64.whl (322.7 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

medspacy_unqlite-0.9.8-cp38-cp38-macosx_10_9_x86_64.whl (344.0 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file medspacy_unqlite-0.9.8.tar.gz.

File metadata

  • Download URL: medspacy_unqlite-0.9.8.tar.gz
  • Upload date:
  • Size: 636.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for medspacy_unqlite-0.9.8.tar.gz
Algorithm Hash digest
SHA256 8bcd311b7038346d8803a1d9c50823ef3c99713ffb0a18f22d17ba6c9563a2eb
MD5 83ad15126a6219185cd38b89c82c0c07
BLAKE2b-256 9ae2a618321ed44add90c7777f7e894a0dce8fe1336b15032ba32f04d100a174

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a86bbdb5979fec09a59a03880bd7c181c33fe713a1d3805bbecdb03a707643d3
MD5 03a6c3b310bf55b6c8d90c94a7ba7bd7
BLAKE2b-256 f8eaec0fa96e119d6da07a6df2fc0f6ec960c170308f8b27abd77d43e1bdd425

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 2a00a3db96391d0b18273be99c19d20f85e845dceeb5895b77adb074a8e6e912
MD5 a3c334e220650289f9829a692e153091
BLAKE2b-256 e7d65b0d95a9e9511c20534a621faa96678fbe186eb185f93ee4935cf965df6c

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4a51ab7c6bbe08b8b18ff3f6695ad391ecf29c2f1cbf7b615e3a85ade2158c5f
MD5 12c8cf56f444f941edc086c937ff4ce2
BLAKE2b-256 1775b3855f83d4ea58fed694082aa1b0b0ae478777ed45ba094950e9ab7e1b47

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52aa29e054335a1eb0facd13bfc32cca45131b3329ac5a6ea23660a13eca03b5
MD5 03926854f0804621617cd7ef2329ff60
BLAKE2b-256 527190dbe51fcc8cf3c0069969fdeed40dc77ce4120fee5e464ed2ffb6dfc1a4

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0fba020a03390c864859e470d3d61208177f4c251f98376e15e7f65324a42b0b
MD5 59ef4e2b19acb0c40e6f90ac27181099
BLAKE2b-256 147de9034d5301946cbc2ff8a642d3b392697ae2794cb7a589a85bf1d9eea0b3

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d946ec243a44df15908df0e7b01d86aaa08192d04e9037b0d847c98cc0037744
MD5 196198c5c7a384944c34dd981f216dcb
BLAKE2b-256 3e9339be8edf50ef30a6f7e13921f87a1466b9cc4b5c75e987b0d52bbb733956

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 983255159f73b33e0560e29eb5d17d3e278768dc2b8d1c6d7a35004ce1047236
MD5 13959af5cc01b8ef206294ae396a9596
BLAKE2b-256 b1ba6bff874d1c6ea46086ac144642f6b6e51fbf80bf044e7d57281e3393f2a5

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 191c4fa809c01748770f458c6d2dc710bca39510ed1ebbda0699a38c7593798f
MD5 0c7d71447affaf1aec2f9dcdf20ef2e9
BLAKE2b-256 0b1695d40d55fa25f7adf7f3bb5c8f827287d2487eb52c08520a98c806cf3667

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2b5d1dc4985c5b920c6a07628f7aaebc5967692f6eb03037c28f2f282990fef0
MD5 739d76365b114a3eef5ee8259bb0f9dc
BLAKE2b-256 88a8e8a7dc7977989d5e2d151a6bbf9658fe2eae48a79c275b6d4d067c28162d

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 38d618f7f075b8341751b2985e8283dee9c3cc97000e1f61479343324fcadc79
MD5 5825baf28c6492c48985e71fd7de7921
BLAKE2b-256 37b8fd2c0dbb0e04c701d58714fd42eb2e4bc55c904c843237140ee4dd6fe528

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a8e2aa2b65dbad275f458cac530065dba29898e2fc6319da3999f31c0c396c52
MD5 f63c339ef8e3cd1f0217cfda871640ee
BLAKE2b-256 b2ae61b6a818c3be6d61e7228d3ee7c577e673e21027536294bcb9c03338c0fa

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 08b82694bf9546c327bc8050e563a179ef840c5d421f3aa3fe2498e2ea1e560d
MD5 159e8e93acc9032b1e78473b435a1b9f
BLAKE2b-256 29a9a463f32e16a78d4fa6b1ffafc95f2985af7e48a05d326af8361bcb26727f

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9223885a6dd32e5861a5c2be87639d58b2b94724c8d11b387e90ac51db093355
MD5 ed4a085f75f14aec437486c3ca0bb0e2
BLAKE2b-256 8485a9a3c297adbcd561934c4782991116a24b0d0ebdb7fb463081f916a4cc56

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 d79203c19c8ac92bd7c15d2aef56d112f590b88be2357ceb97f27a648828e712
MD5 3467b4f959f8d12eefea16018632ef0d
BLAKE2b-256 da0685dcf7479f5ebe0669e03ae402dce9a5c812e1244183727b4326b6811a3f

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5d5564246ebe17ad16a4432b2e8bb8fa562fee481d8bed291e205d18e870ba7d
MD5 1d02b9154bfbba8662f23ff369055e80
BLAKE2b-256 cf8b16b95bc395d14edec734530be1992934df92636bfa659c84d8d6064c802e

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f814537abd391fe5d057738c96192dd0dbe4cc61135db939112251ed92bdb8ed
MD5 3cf018d2f20d68e086f13d4d5c0ea736
BLAKE2b-256 71e2c77a817c18ac1b2d584e46068ae481855b03307a93c88769833ab8b0877a

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 db392053fcf3ce76beb89982eac078837dd486247770e350b2dd759b986ff45e
MD5 c835eba232605f925217bd87e8dee485
BLAKE2b-256 edc37f25aa5185a0c534ab1638184fb5defbe45edefce72d2de138121bfbcfa7

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3dbb26ca6219dcb57dfe518395009c1ce75d43202e3cbd725bfa9c5c071b8857
MD5 6432ec561515b2edca04a4db96d0eca5
BLAKE2b-256 6e960b40d77d0994e5f7ffda86911f19d769c65fad840804932226a8c624f08f

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 41c69c542d15ec650e219e1cb6033deb5f466160b95b6ff6b66feefab77069f0
MD5 8248e9b80da86167b12288a8d9327f82
BLAKE2b-256 edc80b81ab6cb3b71ea17da5dbe5b0f2b0d5dfe5de66216374b89fc9c8aa4f5b

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 13f8b55b4f5150dcd765779abd54b3c8a6f38ef57494cecf1eaf19ac546c902b
MD5 b943d040bd2b7780cceb8ef3a33bdf87
BLAKE2b-256 d084ae672840c4f88922867158d78bc1aa3ccfde75dd463ad517bb5dce3e19fc

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 91bc3281c23ed31a1a691b4f26002ea7d42c1e9d8fa9dbeee19a57324be83205
MD5 ff43506da002db7139942a23d382362c
BLAKE2b-256 056bec5dd155e8c92e5c84a44c327054c04488be1e398330ed7c933f1845b249

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 552799aebf8f29bbb7735214fc9990c9ab2d2bc08f189c6e2500abb3491c438c
MD5 67220adfe4e0b51bd52a54ccf563e701
BLAKE2b-256 c0cc8acbd4ad7a35b5db16769a5f597c51a0cc62571d21b1f95afa59c50ebc74

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 96424f7accbe217b00ab484dd49f234ad45d835f2dea529004c8c9523a9ae511
MD5 915a3c6d800115c75a9503ea29862076
BLAKE2b-256 420703024cf0ae1462121171c99a23a614749ddf7f58288a8907e4a31fedec88

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 39a5bda42ea1930e5153458739db545b61a0517487fc949f4855b0bff2f8168a
MD5 9bbb8084d881ba4596156a4b60d3b8a2
BLAKE2b-256 b020aa225f105a6de9d5fbc1e4a5ead7ec8b85489cc17bdf5bb6cf2658d238dc

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f7e49c7b0888bbfce6a4f1536397b23b0acec5c9987b232d5723c76446ab7454
MD5 784962b76ec74adc793a6cbc82477b23
BLAKE2b-256 392c1306efd60d47a839a5c2dd87273cab6bcf75301a3fdef1317f105434913b

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 dc57ebf2107f233cea5077ab4acbbdd1be52ce90e4b330289a7935775932424a
MD5 f2fd20348b672fb7edb0f6eb9a93fb72
BLAKE2b-256 a5c42d1243cb23b2c3d343fa53720e43bc23ba1eaac159b1abcbb84bd03a39bd

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e8bd0e66cff1b3b82c5b62ff4047b1a0c3627af0bc4a10e608512dc0f16209ac
MD5 6266ad9ed51d4bcbff5f7014035af951
BLAKE2b-256 e89b9ee0c857ab9baa27488a399aadd0dccd3da29aca56c09121c25170a9fdb3

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f764d5fc7e6f55890f871f34460abc85d2252be4b8c1e145d6d8b915e2386fbc
MD5 9bc79860ae74405c3595757adb28f4f6
BLAKE2b-256 655df676ab492e80d085f7db8b03023537c2786fdbe462ea9615d1fc58431ae6

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6f80f59ae4d7959ad38b3ecc0f409ba59bb29fd18e11f5322e9c01e73b331c1
MD5 a494eb69b8f1f842b556bf7d4147f5fb
BLAKE2b-256 5c960236f6d120af350d1b10c814d6bb96b02ee0d19309831c3be548edf61f37

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 48296849841b7b4127fed3b13af1fd1a01c525f896027b1135cdd6c9965f7d5d
MD5 9d8c1fba2150c9958aab71297f5c2611
BLAKE2b-256 64f6c86592ae24f32e1501bc6b43530cf13e90aae59415313bfa4eb7aa660d2d

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 f0d1c8700ab0bb82321d491d3f581078c28ccfc8497db3c2b6c387d7a9204898
MD5 e676a2cbe7438a8bcabda1a98d77f1b1
BLAKE2b-256 15c4c1c3071e9f965574986db237f49e2c2c340d486bdea778ce12a8f2dfae0f

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp38-cp38-win32.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 d305f8d9ba4d58fdfe55849622386196eb9c14e1ef6896dd36d956ef9ebe3311
MD5 716ef306f9be374d51e67d0b140724b7
BLAKE2b-256 10b785dc6f77afe449b8faaab9b31076e0b05a717c6186004c726108fdc5178a

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9b8dbae243f0e0eb80957420ea111cea29fcc5949da54c5f54294468e8d82ea2
MD5 1832609119b260fda2189d26e213cc0d
BLAKE2b-256 1d8306901b036cb2bc727cc71675f85c816ffc1211a29351a7bdfc3027ef3a5b

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5fb8d73de8a502833190f9f7f23482117fed28d79103f84dd12a92800078173f
MD5 3cb77f930ca486b647813bb55edb7a15
BLAKE2b-256 d868f035fd5420933db1582dff1de0fbfb7cf76a9491967d736b6fd34be8ce14

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3de98be2084025e94fa0a42ee789a5acf1739d695eed20d3a23c425513a29544
MD5 9cb09a21c65c2c62ff4d3b61660fff1b
BLAKE2b-256 5f1e8d5a4243b9d038023233fc712e34e8e2989da0895fa7146e43bc49a972d3

See more details on using hashes here.

File details

Details for the file medspacy_unqlite-0.9.8-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for medspacy_unqlite-0.9.8-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 221ffffe5a4242996a8593cd8c4eff7c1c040eac8c9eeb356af61be8ce18a1bc
MD5 1b95fb537c6599a218d837ab1ec13bcb
BLAKE2b-256 ba5144c5c1296f43b48d562a85c3841b3b50e62b6082e94cea5096c47a56493e

See more details on using hashes here.

Supported by

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