- Enhancement: Python 3.10 & 3.11 now supported
- Vendored aioredis due to compatibility issues
- Breaking: Python 3.7 & 3.8 no longer supported
- Updating @uses_django_db helper to use django's built-in db connection cleaning up facilities. This should more closely mirror Django's own internal request-based connection management
- Errors are now reported in a single log message. This should make error logging much more sane.
- Human name is now generated using the
random
builtin rather thansecret
, as this does not need to be crypt-secure - Event firing sanity checking now correctly respects non-required parameters
- Now correctly creating schemas from custom classes with
@property
decorated methods
- Enhancement: Python 3.9 now supported
- Bug: Now showing the welcome message only once
- Enhancement:
TransportPool
now has a sensible__str__()
implementation, which improves logging - Bug: Prioritising use of the
__to_bus__()
method in schema creation. This ensures that schema generation and data deforming are now consistent
- Enhancement: An
EventMessage
is now returned when firing any event.
- Bug:
__from_bus__()
will now correctly operate upon non-mapping types
- Enhancement: Smarter schema generation for objects with
__to_bus__()
methods. The return annotation of the__to_bus__()
method will now be used for schema generation - Bug: Fixing type hint on
cast_to_hint()
method definition - Bug: Adjusting
inspect
command to ensure using the experimental option--show-casting
doesn't cause the whole command to explode
- Enhancement: Dates & datetimes will now be parsed from their string format using
dateutil
where available. This provides more flexible parsing of date formats.
- Bug: Scheduled tasks were not been executed as expected
- No changes since
0.11.0
, appears to be stable
- Lightbus should now behave sensibly in threaded environments
- Major refactoring to Lightbus' internals. Resolves a number of long standing issues. Lightbus now communicates internally using commands sent via queues.
- Python 3.8 now supported
- The
on_error
configuration parameter has been removed and replaced with anon_error
argument tolisten()
. See docs - Standardised on 'worker' rather than 'server' in naming:
- Renamed
server_started
,server_started
, andserver_ping
toworker_started
,worker_started
, andworker_ping
- Renamed
LightbusServerError
toLightbusWorkerError
- Renamed
BusClient.start_server()
toBusClient.start_worker()
- Renamed
BusClient.stop_server()
toBusClient.stop_worker()
- Renamed
- More cases are now handled in Redis connection retrying (connection refused and Redis in LOADING state). These would previously result in an unhandled exception.
- Added experimental
--validate
and--show-casting
arguments to lightbus inspect
Changelog starts now