Utilities for writing servers in Python
Project description
satella
Satella is an almost-zero-requirements Python 3.5+ library for writing server applications. It has arisen out of my requirements to have some classes or design patterns handy, and kinda wish-they-were-in-the-stdlib ones. especially those dealing with mundane but useful things. It also runs on PyPy, and most of it runs on Windows (the part not dealing with forking processes, you see).
Satella uses semantic versioning 2.0.
Satella contains, among other things:
- things to help you manage your application's configuration
- a fully equipped metrics library
- alongside a fully metricized ThreadPoolExecutor
- and an exporter to Prometheus or really any OpenMetrics compliant ingester
- as well as exporters/metricizers for the following libraries:
- helpful exception handlers
- monitoring CPU usage on the system and by your own process
- common programming idioms and structures
Most Satella objects make heavy use of __slots__
, so they are memory friendly and usable on embedded systems, where
memory is at premium.
Change log is kept as part of release notes. The CHANGELOG.md file is only to track changes since last release.
Full documentation is available for the brave souls that do decide to use this library.
See LICENSE for text of the license. This library may contain code taken from elsewhere on the internets, so this is copyright (c) respective authors.
If you want to install extra modules, just run
pip install satella[extras]
Running unit tests
Tests run by default on GitHub Actions.
They should pass on Windows too, but some tests requiring POSIX-like functionality are skipped.
Automatic release system
Releases happen automatically. Just add a tag with the name of the version.
NOTE that changes from 2.25 will be numbered as tags without the prefix v
!
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
Hashes for satella-2.25.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 804276ea7e2e97ca2017c801ec77a62235586fd1d7de37ec8b5578c17df296b2 |
|
MD5 | 4e83e8b56c0771e578ad9c7f6aa21c8c |
|
BLAKE2b-256 | 8f7098f53efd011617ff7862351589c5e684b6f9980b7698dcc77f269e742e9f |