Files
nixpkgs/pkgs/development/python-modules/asgiref/default.nix
T
Raito Bezarius b5c0cef7dd python3Packages.asgiref: 3.8.1 -> 3.9.1
https://github.com/django/asgiref/blob/fbe9506df140a437921a01ea824dbe51d8c38c24/CHANGELOG.txt#L1-L28

⚠️ THIS IS NOT A PLACE OF HONOR ⚠️

What lies below 3.9.1 is cursed.

This bump from asgiref 3.8.1 fixes deep, hard-to-reproduce
deadlocks when sync meets async, particularly in WSGI/async apps
(Django, Starlette, etc.) with compatibility code with another
asynchronous engine, e.g. Tornado. (For example: Zulip's event server)

These are not simple bugs.
They are coroutine limbo. You will wait forever.

Here lies peace between sync and async, until the next time.

Change-Id: I15a180abc100d5221024b4c60ca2b2547bec058f
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2025-09-11 20:58:00 +02:00

47 lines
991 B
Nix

{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
pytest-asyncio,
pytestCheckHook,
pythonOlder,
typing-extensions,
}:
buildPythonPackage rec {
version = "3.9.1";
pname = "asgiref";
format = "setuptools";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "django";
repo = "asgiref";
tag = version;
hash = "sha256-VD8OQP+Xq3JpUz3fZRl6g+SL7mGZjeHjOU9Cd+scYzc=";
};
propagatedBuildInputs = [ typing-extensions ];
nativeCheckInputs = [
pytestCheckHook
pytest-asyncio
];
disabledTests = lib.optionals stdenv.hostPlatform.isDarwin [ "test_multiprocessing" ];
__darwinAllowLocalNetworking = true;
pythonImportsCheck = [ "asgiref" ];
meta = with lib; {
changelog = "https://github.com/django/asgiref/blob/${src.rev}/CHANGELOG.txt";
description = "Reference ASGI adapters and channel layers";
homepage = "https://github.com/django/asgiref";
license = licenses.bsd3;
maintainers = [ ];
};
}