Install & Compatibility
Where this runs
tested against v3.9.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.112s · 78.2MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 7.0s · import 0.098s · 78MB
81MB installed
● package 81MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
twisted
✓ from fedora_messaging import twisted
✗ import fedora_messaging.twisted
Submodules must be imported explicitly; direct import may fail.
connect
✓ from fedora_messaging.api import connect
✗ from fedora_messaging import connect
connect() is in the api submodule, not top-level.
Basic consumer setup. Ensure RabbitMQ is running.
from fedora_messaging import config
from fedora_messaging.api import connect, consume
# Configure connection
config.conf['amqp_url'] = 'amqp://guest:guest@localhost:5672/%2F'
# Define a callback
def callback(message):
print(f"Received: {message.body}")
# Consume a queue
with connect() as connection:
consume(connection, callback, queue='my_queue')
fedora-messaging --version
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'fedora_messaging.twisted'
The 'twisted' extra is not installed. The twisted submodule requires optional dependencies.
fixpip install fedora-messaging[twisted]
KeyError: 'amqp_url'
Configuration was not set before calling connect().
fixSet config.conf['amqp_url'] = 'your_url' before calling connect().
Upgrade
Version history
3.9.0latest on PyPI · released Nov 12, 2025
Audit
Dependencies
pikarequiredAMQP library for RabbitMQ communication
jsonschemarequiredMessage schema validation