Tracktolib
Utility library for python
Installation
You can choose to not install all the dependencies by specifying
the extra parameter such as:
poetry add tracktolib@latest -E pg-sync -E tests --group dev
Here we only install the utilities using psycopg
(pg-sync) and deepdiff
(tests) for the dev environment.
Utilities
Utility functions for logging.
import logging
from tracktolib.logs import init_logging
logger = logging.getLogger()
formatter, stream_handler = init_logging(logger, 'json', version='0.0.1')
Utility functions for asyncpg
Utility functions based on psycopg such as fetch_one
, insert_many
, fetch_count
...
To use the functions, create a Connection
using psycopg: conn = psycopg2.connect()
fetch_one
from tracktolib.pg.pg_sync import (
insert_many, fetch_one, fetch_count, fetch_all
)
data = [
{'foo': 'bar', 'value': 1},
{'foo': 'baz', 'value': 2}
]
insert_many(conn, 'public.test', data)
query = 'SELECT foo from public.test order by value asc'
value = fetch_one(conn, query, required=True)
assert fetch_count(conn, 'public.test') == 2
query = 'SELECT * from public.test order by value asc'
assert fetch_all(conn, query) == data
Utility functions for testing
Utility functions for minio
Utility functions for aiobotocore
Utility functions to initialize the logging formatting and streams
Utility functions using httpx
Utility functions using fastapi