Skip to main content

A STOMP client with message definitions via Pydantic

Project description

Pigeon logo

GitHub Actions Workflow Status Documentation Status PyPI - Version

Pigeon

Pigeon is a combination of a STOMP client, and a message definition system using Pydantic models.

Message Definitions

Messages are defined by writing a Pydantic model for each topic. These messages can be registered at runtime, or placed in a Python package and automatically loaded when Pigeon is imported using an entrypoint.

Logging

When a Pigeon client is instantiated, a logger is created. If desired, logs can also be sent to Grafana Loki by setting environment variables.

Variable Documentation
LOKI_URL The URL of the location of the Loki Server
LOKI_TAGS A mapping using colons to split tags and values, and commas to separate pairs
LOKI_USERNAME The username to use when connecting to the server
LOKI_PASSWORD The password to use when connecting to the server
LOKI_VERSION The version of the Loki Emitter to use

Templates

To ease the creation of services using Pigeon, a Cookiecutter template is available. Similarly, a template for a message definition package is available.

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

pigeon_client-3.1.1.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

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

pigeon_client-3.1.1-py3-none-any.whl (21.4 kB view details)

Uploaded Python 3

File details

Details for the file pigeon_client-3.1.1.tar.gz.

File metadata

  • Download URL: pigeon_client-3.1.1.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pigeon_client-3.1.1.tar.gz
Algorithm Hash digest
SHA256 00ce92abfa46d05dc9c4be7bbfc57cc89c574d94b6882b20c3131222d42b5da4
MD5 a93d6afbf33cd4c6d2cdcf5b6d7ea78b
BLAKE2b-256 6ee23b2b8b070a7e8955532c91fe0b291e3b5e074a040880ec383e1879c0f95d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pigeon_client-3.1.1.tar.gz:

Publisher: main.yaml on TilEM-project/pigeon

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pigeon_client-3.1.1-py3-none-any.whl.

File metadata

  • Download URL: pigeon_client-3.1.1-py3-none-any.whl
  • Upload date:
  • Size: 21.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pigeon_client-3.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6fcf97b87067d31dee0760872783233f67cbb2680ed29e7f0f179196dbb5ff50
MD5 0d039e381c084442c29540ff21f8f3c7
BLAKE2b-256 1507c55657aa1e84e7159f0450c62bc60e6f843eb733578ce7c90b702ea9e82e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pigeon_client-3.1.1-py3-none-any.whl:

Publisher: main.yaml on TilEM-project/pigeon

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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