Skip to main content

Utility library for python

Project description

Tracktolib

Python versions Latest PyPI version CircleCI

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 psycopg2 (pg-sync) and deepdiff (tests) for the dev environment.

Utilities

  • log

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')
  • pg

Utility functions for asyncpg

  • pg-sync

Utility functions based on psycopg2 such as fetch_one, insert_many, fetch_count ...

To use the functions, create a connection using psycopg2: conn = psycopg2.connect()

fetch_one

from tracktolib.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)  # Will insert the 2 dict
query = 'SELECT foo from public.test order by value asc'
value = fetch_one(conn, query, required=True)  # Will return {'foo': 'bar'}, raise an error is not found
assert fetch_count(conn, 'public.test') == 2
query = 'SELECT * from public.test order by value asc'
assert fetch_all(conn, query) == data
  • tests

Utility functions for tests such as get_uuid (that generates a test uuid based on an integer)

get_uuid

from tracktolib.tests import get_uuid

assert get_uuid(1) == '00000000-0000-0000-0000-000000000001'
  • s3-minio

Utility functions for minio

  • s3

Utility functions for aiobotocore

  • logs

Utility functions to initialize the logging formatting and streams

  • http

Utility functions using httpx

  • api

Utility functions using fastapi

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

tracktolib-0.14.0.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

tracktolib-0.14.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file tracktolib-0.14.0.tar.gz.

File metadata

  • Download URL: tracktolib-0.14.0.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.8 Linux/5.15.0-1021-aws

File hashes

Hashes for tracktolib-0.14.0.tar.gz
Algorithm Hash digest
SHA256 9e355e6bbdcb44764045cef1cf82752946abdbd158d7e2da6eb5596fe23b009d
MD5 84bcc6abc15c3a5d6623beb18a3b5a5b
BLAKE2b-256 432d0b4d4d7ad3496890f0af942af6d8463ca3eb09f08ce42d2848431fefc333

See more details on using hashes here.

File details

Details for the file tracktolib-0.14.0-py3-none-any.whl.

File metadata

  • Download URL: tracktolib-0.14.0-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.8 Linux/5.15.0-1021-aws

File hashes

Hashes for tracktolib-0.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 951d3d0b75ce57c2dc940b89f9ad1d9e21d255aeb6a78da322440679c97d32f8
MD5 0bdd0e9c744631d24dd8366531bfb4fc
BLAKE2b-256 1e15b4a8b21551c4fa92697e85d8534616b25ec0d4bb1d7b61ceadbd108900ee

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