Skip to main content

helpers for server alike projects

Project description

serverish - helpers for server alike projects

CI

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 install nats-py package.
  • dns - for using aiodns 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.* nad py-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. Remove await-ing for their results.
    • Change of signature of the callback for MsgRpcResponder.register_function for Rpc->None.

Credits

This package uses some code and ideas from the rich package (Copyright (c) 2020 Will McGugan).

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

serverish-1.1.1.tar.gz (38.1 kB view details)

Uploaded Source

Built Distribution

serverish-1.1.1-py3-none-any.whl (53.2 kB view details)

Uploaded Python 3

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

Hashes for serverish-1.1.1.tar.gz
Algorithm Hash digest
SHA256 419bfc3300073d252aa5f7dca3262291165a7b97dcbf96a0ea274c4e29c17dbd
MD5 bce9886ad0296029a45e2efbfdf68b07
BLAKE2b-256 b6f5a8dc9fbbc5b0d8ae81ea9ca910e928f9d4707a5bb8080725d44ae8371792

See more details on using hashes here.

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

Hashes for serverish-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dc35dfe18dff05f114771fe7880baa323414b9ce82bfba42c6614d7859176cdc
MD5 fa9fd3ebc066005b9eecc8aa8f2464f3
BLAKE2b-256 ac88d77302eea45c770bb3c5d0b8aa632d295dc181d938a92cc792b10e59f235

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