mq-bridge-pulsar (Python)
An Apache Pulsar endpoint for mq-bridge-py, shipped as a native plugin. The package contains no Python implementation of Pulsar — it bundles the compiled Rust endpoint and registers it with mq-bridge, so Python, Node.js and Rust all run the same code and the same delivery semantics.
pip install mq-bridge-py mq-bridge-pulsar
import mq_bridge
import mq_bridge_pulsar
mq_bridge_pulsar.register() # call once, before starting routes
route = mq_bridge.Route.from_str("""
pulsar_to_file:
input:
custom:
name: pulsar
config:
url: "pulsar://localhost:6650"
topic: "persistent://public/default/orders"
subscription: "order-workers"
output:
file:
path: "orders.jsonl"
""")
route.start()
register() returns the endpoint name (pulsar) and is a no-op when called
again. It raises ImportError if mq-bridge is missing and FileNotFoundError
if the wheel does not carry a library for this platform.
The two packages are independent: mq-bridge has no Pulsar dependency, and neither package forces an upgrade of the other. A plugin is native code with the same privileges as the interpreter — install it as you would any other native dependency.
The generic wheel builder is supplied by mq-bridge:
pip install "mq-bridge-py[plugin-packaging]"
python -m mq_bridge.plugin_packaging --package python/mq_bridge_pulsar --out dist
Testing
python/tests/ exercises the endpoint the way Python actually loads it — as a
native plugin through the ABI — so it complements, rather than repeats, the
directly linked Rust tests.
docker compose -f tests/docker-compose.yml up -d
pip install mq-bridge-py mq-bridge-pulsar pytest
pytest python/tests -v
docker compose -f tests/docker-compose.yml down
Every test skips rather than fails when the packages are missing or no broker is listening, so the file is safe to collect anywhere.
One trap is worth knowing: a wheel is a compiled artifact, so an installed
mq-bridge-pulsar is easily older than this checkout, and a fix you just made
here will not be in it. The tests probe for that and skip with instructions
instead of reporting a confusing unknown field failure. To test what you just
wrote, rebuild and reinstall first:
pip install "mq-bridge-py[plugin-packaging]"
python -m mq_bridge.plugin_packaging --package python/mq_bridge_pulsar --out python/dist
pip install --force-reinstall python/dist/*.whl
Building the wheel
The generic builder shipped by mq-bridge builds the Rust cdylib, stages it
into the package, and tags the wheel for the host platform:
python -m mq_bridge.plugin_packaging --package python/mq_bridge_pulsar --out dist
Run it once per operating system and architecture you publish for; building
pulsar-rs needs protoc on PATH.
Metadata
Release files for mq-bridge-pulsar 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| mq_bridge_pulsar-0.1.6-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| mq_bridge_pulsar-0.1.6-py3-none-manylinux_2_38_aarch64.whl | Python 3 | none | Linux glibc 2.38+ ARM64 | Details |
| mq_bridge_pulsar-0.1.6-py3-none-manylinux_2_34_x86_64.whl | Python 3 | none | Linux glibc 2.34+ x86-64 | Details |
| mq_bridge_pulsar-0.1.6-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
| mq_bridge_pulsar-0.1.6-py3-none-macosx_10_9_x86_64.whl | Python 3 | none | macOS 10.9+ x86-64 | Details |
Total release size: 14.2 MB
Release files / mq_bridge_pulsar-0.1.6-py3-none-win_amd64.whl
| Download URL | mq_bridge_pulsar-0.1.6-py3-none-win_amd64.whl |
|---|---|
| Size | 1.8 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
4b3569a0bd5639254e9cea9b755d605f83788048da01270c9709ed87b8f92309
|
|
BLAKE2b-256 checksum How to use checksums |
9216d3fb2e414a57dbe90b72d55d1ee137484a98966fe648006eec0ad223d347
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / mq_bridge_pulsar-0.1.6-py3-none-manylinux_2_38_aarch64.whl
| Download URL | mq_bridge_pulsar-0.1.6-py3-none-manylinux_2_38_aarch64.whl |
|---|---|
| Size | 4.2 MB |
| Tags | Linux glibc 2.38+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
4ad90d91cd4b4380aaa6fd49cc976f82b65dd7ed39e0b98beed47455b6dc7b95
|
|
BLAKE2b-256 checksum How to use checksums |
36e793abc3fa76d3e03d9799234547445ad8887c41be032499a5edb345f7eaa5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / mq_bridge_pulsar-0.1.6-py3-none-manylinux_2_34_x86_64.whl
| Download URL | mq_bridge_pulsar-0.1.6-py3-none-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 4.3 MB |
| Tags | Linux glibc 2.34+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
7faeb74ee560c480953357528537c51b1523489a78198eb4d049122111b6ff5d
|
|
BLAKE2b-256 checksum How to use checksums |
b045ba71357cf3e108a4eb88cdf4812bd1a981a4484d05d6ef1f2f7285c1034e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / mq_bridge_pulsar-0.1.6-py3-none-macosx_11_0_arm64.whl
| Download URL | mq_bridge_pulsar-0.1.6-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f1e2beff5b098f85446b8d93ce12cfe1c69f387101349f0631e6f637897d7185
|
|
BLAKE2b-256 checksum How to use checksums |
1dab53bea54d3738d7053fca80c9f535d72c7dd85da0baf75a6443e1aad6db10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / mq_bridge_pulsar-0.1.6-py3-none-macosx_10_9_x86_64.whl
| Download URL | mq_bridge_pulsar-0.1.6-py3-none-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | Python 3 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
03a6fa0ef1b8b8e24f3d087df8aa522e938a41e0e4200f3ed500af3a31021879
|
|
BLAKE2b-256 checksum How to use checksums |
e692ef9271b32e48e401b81c53e8edcd0ffabfedd84a9e7a3f5665862b9c658a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency log