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
  • Live documents - auto-updating configuration from NATS

See doc directory for more documentation.

Optional (extras) dependencies

The 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.5 Introduces live documents (LiveDocument, get_documentreader(), get_live_document()) for auto-updating configuration from NATS.
  • 1.4 Contains improvements to the network problems recovery and connection tracking.
  • 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.5.1.tar.gz (49.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

serverish-1.5.1-py3-none-any.whl (66.3 kB view details)

Uploaded Python 3

File details

Details for the file serverish-1.5.1.tar.gz.

File metadata

  • Download URL: serverish-1.5.1.tar.gz
  • Upload date:
  • Size: 49.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.12 Darwin/25.1.0

File hashes

Hashes for serverish-1.5.1.tar.gz
Algorithm Hash digest
SHA256 eaddc138f7c6a927da54d955fdedca527315069ccb74259aa718da01fadb73c3
MD5 3aba53c2e93212c7869998f69694cc82
BLAKE2b-256 5d97308ab1172b3eaa460cb1dff1a57eeae070f936331f4c12f2f7ccf7509ee6

See more details on using hashes here.

File details

Details for the file serverish-1.5.1-py3-none-any.whl.

File metadata

  • Download URL: serverish-1.5.1-py3-none-any.whl
  • Upload date:
  • Size: 66.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.12 Darwin/25.1.0

File hashes

Hashes for serverish-1.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 27cef6526d675ecb69cf093de3afa4c12d6a5c37e17ced10fa3a8d0cb0b5b1ef
MD5 2f663420b7dc6437f49f3276627f8355
BLAKE2b-256 a1ed5f2adcdc69ebf24da444b968836579279e14c0dd9537f5efc93911f33d25

See more details on using hashes here.

Supported by

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