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
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 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
Algorithm | Hash digest | |
---|---|---|
SHA256 |
edd34f92a2e7222c98b3bb8e4f92b1b132f57d923c90c5b0339df0f28b35d653
|
|
MD5 |
67d6900db61f7ee937444332a44ccc22
|
|
BLAKE2b-256 |
fc27b330331545856c52fe40bb236836fa28e97bdb96ec8040505d10b5c73e85
|
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
Algorithm | Hash digest | |
---|---|---|
SHA256 |
2dd5caddd4d69e97ac5e2535bb312f575f6c6d3fe8081275ec928304452330e1
|
|
MD5 |
2fa8ac15f29afedf982328730cd0fad5
|
|
BLAKE2b-256 |
811b2dd9d61b599e2b9011eaec97cbaf2872872d58724ed6af12b54315d37c8a
|