Sourced from asgiref's changelog.
\n\n\n3.4.0 (2021-06-27)
\n\n
\n- \n
\nCalling sync_to_async directly from inside itself (which causes a deadlock\nwhen in the default, thread-sensitive mode) now has deadlock detection.
\n- \n
\nasyncio usage has been updated to use the new versions of get_event_loop,\nensure_future, wait and gather, avoiding deprecation warnings in Python 3.10.\nPython 3.6 installs continue to use the old versions; this is only for 3.7+
\n- \n
\nsync_to_async and async_to_sync now have improved type hints that pass\nthrough the underlying function type correctly.
\n- \n
\nAll Websocket* types are now spelled WebSocket, to match our specs and the\nofficial spelling. The old names will work until release 3.5.0, but will\nraise deprecation warnings.
\n- \n
\nThe typing for WebSocketScope and HTTPScope's
\nextensions
key has been\nfixed.3.3.4 (2021-04-06)
\n\n
\n- The async_to_sync type error is now a warning due the high false negative\nrate when trying to detect coroutine-returning callables in Python.
\n3.3.3 (2021-04-06)
\n\n
\n- The sync conversion functions now correctly detect functools.partial and other\nwrappers around async functions on earlier Python releases.
\n3.3.2 (2021-04-05)
\n\n
\n\n- \n
\nSyncToAsync now takes an optional "executor" argument if you want to supply\nyour own executor rather than using the built-in one.
\n- \n
\nasync_to_sync and sync_to_async now check their arguments are functions of\nthe correct type.
\n- \n
\nRaising CancelledError inside a SyncToAsync function no longer stops a future\ncall from functioning.
\n- \n
\nThreadSensitive now provides context hooks/override options so it can be\nmade to be sensitive in a unit smaller than threads (e.g. per request)
\n
... (truncated)
\n