Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.1.1] - 2026-07-10¶
Fixed¶
stop()claims the loop and thread atomically under the registrar lock, so concurrent stops (ASGI lifespan plus a manualcontainer.shutdown()) cannot interleave. The connection close is also bounded bypublish_timeout_secondswith a warning instead of hanging shutdown forever.
[0.1.0] - 2026-07-10¶
Added¶
@consumer(queue, exchange=, routing_key=, exchange_type=)marker for component methods (sync and async); JSON bodies decoded before dispatch.@publisher/@publishdeclarative publishing clients (sync stubs block on confirm, async stubs await).RabbitRegistrar: dedicated background asyncio loop owning the robust connection; ack-on-success, reject-without-requeue on failure; durable declarations; connection closed on container shutdown.- Settings under the
rabbitmqprefix:url,enabled,prefetch_count,publish_timeout_seconds(zero-config). - Auto-discovery via the
pico_boot.modulesentry point.