helpers for server alike projects
Project description
serverish - helpers for server alike projects
Features
- Component management
- Singletons
- Connections management and diagnostics
- NATS based Messenger
See doc
directory for more documentation.
Optional (extras) dependencies
Following extras are available:
messenger
- for using NATS based Messenger. Will installnats-py
package.dns
- for usingaiodns
DNS resolver for connection status diagnostics, it's extracted as an extra dependency because it's not available on all platforms.
In order to use Messenger, you have to add extra 'messenger' to your project.toml
serveris dependency, e.g.:
serverish = {git="https://github.com/AkondLab/serverish.git", extras=["messenger"], branch="master"}
or specify dpendency with extras in the pip
convention: serverish[messenger]
.
this will install nats-py
package.
Plans
- Decorators
@messenger.sub(subject)
(Web framework style) - Progress with automatic increment for known durations e.g.
pro_pub.update(completed=1, when=+20)
- Pytest fixtures for NATS on CI
Changes
- 1.1 Switches to
param
2.* nadpy-nats
1.7.*. Also, publisher may reraise exceptions or ignore them. - 1.0 Changes NATS subscriptions to pull only
- 0.12 Extends messges metdata of
nats
section, Handles reconnection of subscriptions, - 0.11 Extends, tasks, NATS connection tracking and messenger opening options (
Messenger.open
) - 0.10 Adds timestamp to journal messages and extablishes schema for journal messages.
- 0.9.1 Makes dependency to aiodns optional.
- 0.9.0 Introduces Logging handler for passing standard logging messages to the Messenger.
- 0.8 Introduces journal publishing/reading API.
- 0.7 Includes progress tracking messages in the Messenger API.
- 0.6 introduces breaking changes in the Messenger API:
- Convenience functions
get_xxxxx()
returning publishers/readers are synchronous now. Removeawait
-ing for their results. - Change of signature of the callback for
MsgRpcResponder.register_function
forRpc->None
.
- Convenience functions
Credits
This package uses some code and ideas from the rich package (Copyright (c) 2020 Will McGugan).
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
serverish-1.1.1.tar.gz
(38.1 kB
view details)
Built Distribution
serverish-1.1.1-py3-none-any.whl
(53.2 kB
view details)
File details
Details for the file serverish-1.1.1.tar.gz
.
File metadata
- Download URL: serverish-1.1.1.tar.gz
- Upload date:
- Size: 38.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.12.2 Darwin/23.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 419bfc3300073d252aa5f7dca3262291165a7b97dcbf96a0ea274c4e29c17dbd |
|
MD5 | bce9886ad0296029a45e2efbfdf68b07 |
|
BLAKE2b-256 | b6f5a8dc9fbbc5b0d8ae81ea9ca910e928f9d4707a5bb8080725d44ae8371792 |
File details
Details for the file serverish-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: serverish-1.1.1-py3-none-any.whl
- Upload date:
- Size: 53.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.12.2 Darwin/23.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc35dfe18dff05f114771fe7880baa323414b9ce82bfba42c6614d7859176cdc |
|
MD5 | fa9fd3ebc066005b9eecc8aa8f2464f3 |
|
BLAKE2b-256 | ac88d77302eea45c770bb3c5d0b8aa632d295dc181d938a92cc792b10e59f235 |