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.2.0.tar.gz (64.2 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.2.0-py3-none-any.whl (73.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: planq-0.2.0.tar.gz
  • Upload date:
  • Size: 64.2 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.2.0.tar.gz
Algorithm Hash digest
SHA256 27c9373ff8486781aa20a42ae5b8cc10fa4df4914fc9e1a5781bc4b69f562fc4
MD5 8cf246e01dbc5217c8e860d2ccf73989
BLAKE2b-256 a972fa1a014ea111f7e849243034acda638c3378ba1d1f2d77788db4c620e089

See more details on using hashes here.

File details

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

File metadata

  • Download URL: planq-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 73.9 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3507c6bb917d140c561a813d20a812338a32ccacbf2759e6c1fd2df6c1db29b8
MD5 a3c33565b24972a97a317b30fdb3d144
BLAKE2b-256 3a907a1c32ce494c3b29d9dd3b3dec4945304b06480bfa5af7b7c75d5f4e5e58

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