Skip to main content

Python Software Dev Kit

Project description

python-sdk

Software Development Kit for Python, otherwise known as a Microservice Chassis, which handles cross-cutting concerns such as:

  • Logging
  • Metrics
  • Tracing
  • Configuration
  • Secrets
  • Versioning
  • Health checks

WARNING

This library is still in development and does not have stable interfaces. While it is in use by some internal projects, it is not yet recommended for any productions workloads.

Requirements

Python 3.10+

Installation

pip install pythonsdk

# If using AWS functionality
pip install pythonsdk[aws]

# If using CLI functionality
pip install pythonsdk[cli]

# If using `testing` package
pip install pythonsdk[testing]

Packages

Below is an abstract of the functionality provided by this library. See docs for more information.

bin

The bin package provides utilities for invoking processes while streaming, capturing and manipulating their output.

config

The config package provides a declarative mechanism for defining your application config, with support for multiple configuration sources (environment variables, remote HTTP endpoints, S3 objects, etc.) validation, secrets injection, hot-reloading, documentation, etc.

encoding

The encoding package provides some encoding utils commonly used when authoring networked APIs.

locks

The locks package contains a distributed locking mechanism backed by multiple different providers.

log

The log package contains an externally configurable logging interface which supports structured logging and hot reloading.

secrets

The secrets package provides a simple interface for reading in secrets stored in secrets stores such as AWS Secrets Manager.

service

The service package provides a uvicorn-like service component for running non-webapp services (workers).

testing

The testing package provides a highly opinionated acceptance test suite for enforcing code quality.

versioning

The versioning package provides language-agnostic application versioning strategies.

Interfaces

CLI

The cli python-sdk provides dev-time utilities such as a highly opinionated formatter (python-sdk fmt).

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

pythonsdk-0.14.0.tar.gz (47.7 kB view details)

Uploaded Source

Built Distribution

pythonsdk-0.14.0-py3-none-any.whl (78.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pythonsdk-0.14.0.tar.gz
  • Upload date:
  • Size: 47.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for pythonsdk-0.14.0.tar.gz
Algorithm Hash digest
SHA256 edd34f92a2e7222c98b3bb8e4f92b1b132f57d923c90c5b0339df0f28b35d653
MD5 67d6900db61f7ee937444332a44ccc22
BLAKE2b-256 fc27b330331545856c52fe40bb236836fa28e97bdb96ec8040505d10b5c73e85

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pythonsdk-0.14.0-py3-none-any.whl
  • Upload date:
  • Size: 78.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for pythonsdk-0.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2dd5caddd4d69e97ac5e2535bb312f575f6c6d3fe8081275ec928304452330e1
MD5 2fa8ac15f29afedf982328730cd0fad5
BLAKE2b-256 811b2dd9d61b599e2b9011eaec97cbaf2872872d58724ed6af12b54315d37c8a

See more details on using hashes here.

Supported by

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