Skip to main content

Helps to use PostgreSQL listen/notify with aiopg

Project description

aiopg-listen

This library simplifies usage of listen/notify with aiopg:

  1. Handles lost of a connection
  2. Simplifies processing notifications from multiple channels
  3. Setups a timeout for receiving a notification
  4. Allows to receive all notifications/only last notification depends on ListenPolicy.
import asyncio
import aiopg
import aiopg_listen


async def handle_notifications(notification: aiopg_listen.NotificationOrTimeout) -> None:
    print(f"{notification} has been received")


listener = aiopg_listen.NotificationListener(aiopg_listen.connect_func())
listener_task = asyncio.create_task(
    listener.run(
        {"channel": handle_notifications},
        policy=aiopg_listen.ListenPolicy.LAST,
        notification_timeout=1
    )
)

async with aiopg.connect() as connection, connection.cursor() as cursor:
    for i in range(42):
        await cursor.execute(f"NOTIFY simple, '{i}'")

v0.0.7 (2023-03-09)

v0.0.6 (2022-11-02)

v0.0.5 (2021-11-02)

v0.0.4 (2021-09-08)

  • Reexport explicitly #18

v0.0.3 (2021-08-10)

  • Allow suppressing timeout by aiopg_listen.NO_TIMEOUT #9
  • Fix typing for python 3.8 #11

v0.0.2 (2021-07-25)

  • Add aiopg_listen.connect_func to simplify initialization #5
  • Rename consumer to listener #6
  • Do not crash if handler fails #7

v0.0.1 (2021-07-25)

  • A first version

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

aiopg-listen-0.0.7.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

aiopg_listen-0.0.7-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file aiopg-listen-0.0.7.tar.gz.

File metadata

  • Download URL: aiopg-listen-0.0.7.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for aiopg-listen-0.0.7.tar.gz
Algorithm Hash digest
SHA256 ddebe97d14088fc76f0afc76f85f281c3663bd033c688705bcdb454ffc9866e7
MD5 19346ba30a28c97545a82cb838d01ce6
BLAKE2b-256 4e1318535de2817239ea14c17d7db55cb38771e6b6c63eeb86ba878c9df39789

See more details on using hashes here.

Provenance

File details

Details for the file aiopg_listen-0.0.7-py3-none-any.whl.

File metadata

File hashes

Hashes for aiopg_listen-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 68332ead7f1bbb6445cc35aa61d55662f757db1aa7352473271d4a3cf1cb2f43
MD5 59c01017b2d91b48b6e353de55f55b22
BLAKE2b-256 68a2625253bcae9187c1538012a0f4016b736e563c751419736afb695fcc55ce

See more details on using hashes here.

Provenance

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