Skip to main content

Transport-agnostic async task queue using JSON-RPC 2.0

Project description

PlanQ

CI codecov PyPI Python versions License


PlanQ is a transport-agnostic async task queue for Python. Define a task once and run it over an in-memory, Redis, or SQS broker — the wire format is JSON-RPC 2.0, so producers and consumers stay decoupled from the transport.

Installation

pip install planq            # in-memory only
pip install "planq[redis]"   # Redis broker
pip install "planq[sqs]"     # AWS SQS broker

Example

from planq import Planq
from planq.providers.memory import InMemoryBroker

app = Planq(broker=InMemoryBroker())

@app.task()
async def greet(name: str, say: str = "hi") -> None:
    print(f"{say}, {name}!")

await greet.send("world")   # enqueue

License

Apache-2.0

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

planq-0.3.0.tar.gz (64.5 kB view details)

Uploaded Source

Built Distribution

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

planq-0.3.0-py3-none-any.whl (74.2 kB view details)

Uploaded Python 3

File details

Details for the file planq-0.3.0.tar.gz.

File metadata

  • Download URL: planq-0.3.0.tar.gz
  • Upload date:
  • Size: 64.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for planq-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7d768d34a18a6042d80772418ca479bb3136effa177c1e0541f07ce359df9b6a
MD5 f7533713f7169ec8cb5ded781c44b438
BLAKE2b-256 7895a74b205682419bef76eed263c393820a531a639d8e09784c56976c19960a

See more details on using hashes here.

File details

Details for the file planq-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: planq-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 74.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for planq-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9427127695d1085e2581d33331f2cc2fb3035bc9401e21efec6a93327fdfbecf
MD5 b38507286da75261e8f9b2e5f5905a0f
BLAKE2b-256 d6d37ad847c2602e1578376e4c78a0b6713f6e1ce9cf4944bf01e62b1c616807

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