Skip to main content

EntroQ (Python client)

Python client for EntroQ, a fault-tolerant, competing-consumer task queue with exactly-once semantics and an atomic Modify operation over tasks and a companion key/value doc store.

This package provides an async HTTP/Connect client and a small worker framework. Run one of the Go services (eqpg serve, eqmem serve, eqredis serve, or eqsqlite serve) and connect with EntroQJSON.

Install

pip install entroq

Quick start

A worker claims tasks from one or more queues and dispatches them to a handler:

import asyncio
from entroq import EntroQWorker, Modification
from entroq.json import EntroQJSON

@EntroQWorker.handler
async def process(task, docs):
    # ... do the work ...
    return Modification(Modification.deleting(task))   # ack by deleting

async def main():
    async with EntroQJSON("http://localhost:9100") as eq:
        await EntroQWorker(eq, "my-queue").run(process)

asyncio.run(main())

The default HTTP client has no transport deadline. Cancel the calling asyncio task directly, wrap it in asyncio.timeout(), or pass timeout_s to claim() when a bounded wait is required. The client exposes its configured httpx.AsyncClient as eq.http; pass http_client= to supply a customized caller-owned client and timeout policy. Injected clients are not closed by eq.aclose(). Transport failures raise TransportError, preserving the original exception and indicating whether the request is known to be safe to retry.

Documentation

See the main repository for the concepts (tasks, claims, the atomic Modify, the doc store, and the /gc= naming convention) and the server/backends the Go side provides.

Metadata

Release files for entroq 0.15.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for entroq 0.15.0
File Size Uploaded Provenance
entroq-0.15.0.tar.gz 57.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for entroq 0.15.0
File Interpreter ABI Platform
entroq-0.15.0-py3-none-any.whl Python 3 none any Details

Total release size: 92.9 kB

Release files / entroq-0.15.0.tar.gz

Download URL entroq-0.15.0.tar.gz
Size 57.9 kB
Tags Source
SHA-256 checksum
How to use checksums
b2428315e8c8b53db892359df5674c78f9543b4c9570112bafe568a1fd11ab86
BLAKE2b-256 checksum
How to use checksums
acaac90dac7589ed8e9c0fd7cdd1f5bae6aa47ce018e0a3a55d04fd5a0e4c2cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / entroq-0.15.0-py3-none-any.whl

Download URL entroq-0.15.0-py3-none-any.whl
Size 35.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b8b2f1508ad1b75a2be88bd5d64805766d00aecd31b73fb2d81874a465f66da3
BLAKE2b-256 checksum
How to use checksums
78bb381af8a207abe1bd48141b653c85f689f78a359b42ef82fb349b0402dd4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Security for entroq 0.15.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.15.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page