- PubSub-related messages
run_jobmethod now return values rather than messages to make result storage easier. DeferredJobnow enqueued with fully qualified name so they're traceable.DeferredJobresults returned now stored as RQ result.DeferredJobcan now set RQ defaults message wide viattl,result_ttl,job_timeout,failure_ttl.DeferredJobasync methodpost_queuesimilar topre_queuebut with actual job passed along.- A new context manager
envelope.testing.MessageCatcherto help with unit testing.
- Added setting
ENVELOPE_USER_CHANNEL_SEND_SUBSCRIBEto send a subscribe message to consumer rather than just adding the client to the users channel. user_logged_outsignal causes a close message to be sent on the user channel, so consumers will be disconnected.- Loading RQ-job via message class for deferred jobs, to make the code easier to follow + overrides simpler.
- Subscribe-messages have a queue timeout of 20s as default, to avoid subscribe spamming.
- Fixed problem with consumer not catching validation errors deeper down in message processing.
- Internal messages needed a custom job which wasn't intuitive or easy to debug. Passing along env as envelope_name instead.
- RecheckSubscriptionsSchema subscriptions changed from set to list to fix common serialization problems.
- PubSub and context channels accepts arguments
envelope_nameandlayer_namein case they need to be overridden. (#2)
- Initial release