The SirixDB Python SDK
Project description
sirix-python-client
The home of the SirixDB python client
This package is currently in alpha stage.
The python client supports both sync and async programs.
The api docs can be found here. The api docs can also be built locally with the following:
cd docs
make html
Some example code:
from pysirix import sirix_sync, DBType, Insert
from httpx import Client
client = Client(base_url="http://localhost:9443")
sirix = sirix_sync("admin", "admin", client)
db = sirix.database("json-diff", DBType.JSON)
db.create()
resource = db.resource("json-resource")
resource.create(
{
"foo": ["bar", None, 2.33],
"bar": {"hello": "world", "helloo": True},
"baz": "hello",
"tada": [{"foo": "bar"}, {"baz": False}, "boo", {}, []],
}
)
resource.update(4, {"new": "stuff"}, insert=Insert.RIGHT)
Or with Async Support:
from pysirix import sirix_async, DBType, Insert
from httpx import AsyncClient
import asyncio
async def main():
client = AsyncClient(base_url="http://localhost:9443")
sirix = await sirix_async("admin", "admin", client)
db = sirix.database("json-diff", DBType.JSON)
await db.create()
resource = db.resource("json-resource")
await resource.create(
{
"foo": ["bar", None, 2.33],
"bar": {"hello": "world", "helloo": True},
"baz": "hello",
"tada": [{"foo": "bar"}, {"baz": False}, "boo", {}, []],
}
)
await resource.update(4, {"new": "stuff"}, insert=Insert.RIGHT)
loop = asyncio.get_event_loop()
loop.run_until_complete(asyncio.run(main()))
pysirix-shell
Installing
If you are not installing pysirix as part of a project, the preferred install method is to use pipx:
pipx install pysirix
Configuring
In your home directory, create a folder named pysirix-shell
, and create a file named config.json
in this folder. This file will hold the configuration for the shell. It should have the following form:
{
"localhost": {
"url": "http://localhost:9443",
"username": "admin",
"timeout": 4
},
"cloud": {
"url": "https://sirix-demo.com:9443",
"username": "administrator"
}
}
The timeout field is optional, and defaults to 5 (seconds).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pysirix-0.5.3.tar.gz
.
File metadata
- Download URL: pysirix-0.5.3.tar.gz
- Upload date:
- Size: 25.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.6.1 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0eb5fed94b9598fc91e801b7b961647f14d738a8a8ea0da1cb59a1f77a0000e3 |
|
MD5 | bd0c9895db1e8834e5d3870626cadf39 |
|
BLAKE2b-256 | 89b46f490ce34eae0add367d7afbbe8a48c512e68dc26607354ac514469c027c |
File details
Details for the file pysirix-0.5.3-py3-none-any.whl
.
File metadata
- Download URL: pysirix-0.5.3-py3-none-any.whl
- Upload date:
- Size: 29.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.6.1 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 84a207aeffa852b9662d6e9d69883b3a0350723ba30e116de430b9c6744c9d39 |
|
MD5 | 0f1f1f9b248db66803066b8bcf89ca85 |
|
BLAKE2b-256 | 5630be0e7ff2f995602f53a8a783aae56072a4510b18b1aac7b54e3cfc2388af |