Skip to main content

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.5

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

Built distributions (wheels)

Table of built distributions (wheels) for mq-bridge-pulsar 0.1.5
File
mq_bridge_pulsar-0.1.5-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
mq_bridge_pulsar-0.1.5-py3-none-manylinux_2_38_aarch64.whl Python 3 none Linux glibc 2.38+ ARM64 Details
mq_bridge_pulsar-0.1.5-py3-none-manylinux_2_34_x86_64.whl Python 3 none Linux glibc 2.34+ x86-64 Details
mq_bridge_pulsar-0.1.5-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
mq_bridge_pulsar-0.1.5-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.5-py3-none-win_amd64.whl

Download URL mq_bridge_pulsar-0.1.5-py3-none-win_amd64.whl
Size 1.8 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
ae970e1ea4f44a9e4dc20be2a3ce83601d575b8000cfd8a3a6dfc8ad7828e275
BLAKE2b-256 checksum
How to use checksums
8625e59e7588e5491a0528d67f64372086357c829cc19999d34a850b223b2716
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 Sep 27, 2026.

Transparency log

Release files / mq_bridge_pulsar-0.1.5-py3-none-manylinux_2_38_aarch64.whl

Download URL mq_bridge_pulsar-0.1.5-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
6672083a16f431ab1cc6795ac8a7c0b749a3bf36cd492b258966263add06603f
BLAKE2b-256 checksum
How to use checksums
f7313ddd5224c2efd24fb7b97973803e65e421b17230962fb66699613368d69c
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 Sep 27, 2026.

Transparency log

Release files / mq_bridge_pulsar-0.1.5-py3-none-manylinux_2_34_x86_64.whl

Download URL mq_bridge_pulsar-0.1.5-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
dc81f69c9ea4c07c2a5285e4cb793a36f798692686f01bf416f5156ad1ff6fe8
BLAKE2b-256 checksum
How to use checksums
f9d1bbda47dc414c0c0be4bade10d87a9e84eec7503735bcc0dc9b15c516802b
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 Sep 27, 2026.

Transparency log

Release files / mq_bridge_pulsar-0.1.5-py3-none-macosx_11_0_arm64.whl

Download URL mq_bridge_pulsar-0.1.5-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
c79a9625f02d96fa577b6734fc757237406e5159278083f78e973cbf7f449238
BLAKE2b-256 checksum
How to use checksums
fdef2f0704a4ffcbe545e8f2585b830198d8ad9a2b3dea7d8b3433e500c1d56d
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 Sep 27, 2026.

Transparency log

Release files / mq_bridge_pulsar-0.1.5-py3-none-macosx_10_9_x86_64.whl

Download URL mq_bridge_pulsar-0.1.5-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
071b614c158c8a3d2bc21d3f245bb3a79bf17994dba8dabd28f09be564291107
BLAKE2b-256 checksum
How to use checksums
73c9e49398e5ba6167823bb22e8aba821df6038b490e9a3260158cb9536e1750
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 Sep 27, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.6

5 release files

This release

0.1.5 This release

5 release files

0.1.4

5 release files

0.1.3

5 release files

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